Остановился, когда размер программы превысил 5 килобайт. На всё ушло два дня - вчера и сегодня.
...Я тут полистал тему и обнаружил, что один из предыдущих постов почти такой же. Ну ладно, ещё раз опубликую. В этот раз всё будет иначе! Мы пойдём другим путём!
[code]/* p42
Язык Turbo C 2.0
Начальный курс C и C++ */
/* 1 - 15k, 2 - 20k, 3 - 21k, 5 - 22k, 12 - 23k
17 - 24k, 20 - 25k, 22 - 28k */
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
float ga = 3.1415926; /* число пи */
char dd;
pa (); pb (); pc ();
sa (float);
float va (float);
gd (int);
main ()
{
int aa, ab, ac;
int da, db; /* ввод данных */
float ja, jb;
float ma; /* ввод данных */
unsigned ya;
char ad; /* ввод данных */
char jd;
char md [80], me [10]; /* ввод данных */
printf ("? (1-4) ");
scanf ("%i", &aa);
if (aa == 1) goto aaa;
if (aa == 2) goto aab; /* ввод данных */
if (aa == 3) goto aac; /* дополнительный ввод данных */
if (aa == 4) goto aad; /* большие программы */
printf ("\n");
return;
aaa:
aa = 1996;
printf ("1. Сейчас %i год.\n", aa);
printf ("4. ");
pa (); pb (); pc ();
printf ("5. ");
ja = 5;
sa (ja);
printf ("6. Длина окружности радиуса %.4g равна %.4g.\n", ja, va (ja));
printf ("7.");
for (aa = 10; aa > 0; aa--) printf (" %i", aa);
printf ("\nСтарт!\n");
ya = 60000;
aa = ya;
printf ("8. aa = %i, ya = %u.\n", aa, ya);
jd = 'c'; printf ("10. %c", jd);
jd = '+'; printf ("%c%c\n", jd, jd);
aa = 5; ab = 60;
aa++; ++ab;
printf ("15. aa = %i, ab = %i.\n", aa, ab);
printf ("aa = %i, ab = %i.\n", aa++, ++ab);
aa = 101 <= 105;
ab = 101 > 105;
printf ("16. True - %i, false - %i.\n", aa, ab);
goto aaz;
aab:
printf ("Введите два целых числа: ");
scanf ("%i%i", &da, &db);
printf ("Введите рациональное число: ");
scanf ("%f", &ma);
printf ("Введите символ: ");
scanf ("%c", &ad); scanf ("%c", &ad);
printf ("Введите строку: ");
gets (md); gets (md);
ja = ga * 2 * da;
printf ("2. Радиус %i, длина %.4g.\n", da, ja);
ja = ga * 2 * ma;
jb = ga * ma * ma;
printf ("3. Радиус %.4g, длина окружности %.4g, площадь круга %.4g.\n",
ma, ja, jb);
printf ("9. ");
dd = ad;
gd (da);
printf ("12. Я знаю ваше имя; ваше имя %s.\n", md);
aa = db;
if (aa == 0) aa = 1;
printf ("14. Целая часть %i, остаток от деления %i.\n",
da / aa, da % aa);
printf ("17. ");
if (ma > 0) {aa = 1; printf ("Число %.4g положительное, aa = %i.\n", ma, aa);}
if (ma == 0) {aa = 0; printf ("Число %.4g равно нулю, aa = %i.\n", ma, aa);}
if (ma < 0) {aa = -1; printf ("Число %.4g отрицательное, aa = %i.\n", ma, aa);}
printf ("18. ");
if (ma > 0) {aa = 1; printf ("Число %.4g положительное.\n", ma);}
else if (ma < 0) {aa = -1; printf ("Число %.4g отрицательное.\n", ma);}
else {aa = 0; printf ("Число %.4g равно нулю.\n", ma);}
goto aaz;
aac:
printf ("11. Нажмите какую-либо клавишу: ");
jd = getche ();
if (jd == 'a') printf ("\nВы нажали клавишу 'a'.");
printf ("\nВы нажали клавишу '%c'.\n", jd);
printf ("13. Введите строку: ");
gets (md);
scanf ("%[0123456789]%s", md, me);
printf ("%s..%s\n", md, me);
printf ("21. Введите символ: ");
getchar ();
for (;;)
{
jd = getchar ();
if (jd == 'Q') break;
printf ("%c", jd);
}
goto aaz;
aad:
printf ("19. Введите прописную букву русского алфавита: ");
jd = getchar (); jd = getchar ();
if (jd >= 'А' && jd <= 'Я')
switch (jd)
{
case 'А': printf ("Алексеев.\n"); break;
case 'Б': printf ("Булгаков.\n"); break;
case 'В': printf ("Волошин.\n"); break;
case 'Г': printf ("Гоголь.\n"); break;
default: printf ("Достоевский, Зощенко и другие.\n"); break;
}
else printf ("Надо было ввести прописную русскую букву.\n");
printf ("20. Введите прописную букву русского алфавита: ");
jd = getchar (); jd = getchar ();
if (jd >= 'А' && jd <= 'Я')
switch (jd)
{
case 'А': printf ("Алексеев.\n");
case 'Б': printf ("Булгаков.\n");
case 'В': printf ("Волошин.\n");
case 'Г': printf ("Гоголь.\n");
default: printf ("Достоевский, Зощенко и другие.\n");
}
else printf ("Надо было ввести прописную русскую букву.\n");
randomize ();
aa = random (100) + 1;
ab = 0;
printf ("22. ");
do {
printf ("Введите число от 1 до 100: ");
scanf ("%i", &ac);
ab++;
if (aa < ac) printf ("Загаданное число меньше.\n");
if (aa > ac) printf ("Загаданное число больше.\n");
} while (aa - ac);
printf ("Вы угадали число.\n");
printf ("Затратили на угадывание %i попыток.\n", ab);
aaz:
getch ();
printf ("\n");
}
pa () {printf ("Вызвали первую функцию.\n");}
pb () {printf ("Вызвали вторую функцию.\n");}
pc () {printf ("Вызвали третью функцию.\n");}
sa (float a) {printf ("Длина окружности радиуса %.4g равна %.4g.\n",
a, ga * 2 * a);}
float va (float a) {return ga * 2 * a;}
gd (int a)
{
int b;
if (a < 1) return;
if (a > 200) a = 200;
for (b = 0; b < a; b++) printf ("%c", dd);
printf ("\n");
}[/code]
Присоединяйтесь — мы покажем вам много интересного
Присоединяйтесь к ОК, чтобы подписаться на группу и комментировать публикации.
Нет комментариев