10 REM p1

20 REM Язык Quick Basic 4.0
30 REM Input 3 int
40 DIM a AS INTEGER, b AS INTEGER, c AS INTEGER, d AS INTEGER, e AS INTEGER
50 DIM f AS INTEGER, g AS INTEGER, h AS INTEGER, i AS INTEGER, j AS INTEGER
60 DIM k AS INTEGER, l AS INTEGER, m AS INTEGER
70 DIM p: REM Число "пи"
80 DIM q, r
100 CLS
110 PRINT "Введите три целых числа:"
120 INPUT a, b, c
130 d = a: e = b: f = c
140 IF d = -32768 THEN d = 0
150 IF e = -32768 THEN e = 0
160 IF f = -32768 THEN f = 0
170 IF d < 0 THEN d = -d
180 IF e < 0 THEN e = -e
190 IF f < 0 THEN f = -f
200 g = d: h = e: i = f
210 IF g = 0 THEN g = 1
220 IF h = 0 THEN h = 1
230 IF i = 0 THEN i = 1
240 PRINT
250 p = 3.141592653589#
300 REM 186.1.1 Абсолютная величина числа
310 PRINT "1."; d
320 REM 186.2.2 Максимум из двух чисел
330 j = a
340 IF j < b THEN j = b
350 PRINT "2. Максимум "; j
360 REM 186.3.3
370 j = a: k = b
380 IF k > j THEN k = 1 ELSE j = 1
390 PRINT "3. "; j; ", "; k
400 REM 198.1.4 Знак числа y = sign x
410 j = 0
420 IF a < 0 THEN j = -1
430 IF a > 0 THEN j = 1
440 PRINT "4. "; j
450 REM 199.3.5 Упорядочение двух переменных
460 j = a: k = b
470 IF a > b THEN j = b: k = a
480 PRINT "5. "; j; ", "; k
490 REM 200.5.6 Оценки за предмет
500 IF a = 2 THEN PRINT "6. Это неудовлетворительно."
510 IF a = 3 THEN PRINT "6. Это удовлетворительно."
520 IF a = 4 THEN PRINT "6. Это хорошо."
530 IF a = 5 THEN PRINT "6. Это отлично."
540 IF a < 2 OR a > 5 THEN PRINT "6. Нет такой оценки."
550 REM 207.1.7 Упорядочение трех переменных
560 j = a: k = b: l = c
570 IF j > k THEN m = j: j = k: k = m
580 IF k > l THEN m = k: k = l: l = m
590 IF j > k THEN m = j: j = k: k = m
600 PRINT "7. "; j; ", "; k; ", "; l
610 REM 207.1.8 Максимум из трех переменных
620 j = a
630 IF j < b THEN j = b
640 IF j < c THEN j = c
650 PRINT "8. Максимум "; j
660 REM 45.2.9 Длина окружности
670 q = 2 * p * a
680 PRINT "9. Радиус "; a; ", длина окружности "; q
690 REM 68.10.10 Деление чисел
700 IF b = 0 THEN PRINT "10. Деление на ноль невозможно.": GOTO 730
710 j = a \ b: k = a MOD b
720 PRINT "10. Целая часть "; j; ", остаток от деления "; k
730 REM 75.13.11
740 IF a > 0 THEN j = 1: PRINT "11. Число"; a; "положительное, sign ="; j
750 IF a = 0 THEN j = 0: PRINT "11. Число"; a; "равно нулю, sign ="; j
760 IF a < 0 THEN j = -1: PRINT "11. Число "; a; "отрицательное, sign = "; j
770 REM 71.2.12 Наибольший общий делитель. Алгоритм Евклида.
780 j = g: k = h
790 WHILE j <> k
800 IF j > k THEN j = j - k ELSE k = k - j
810 WEND
820 PRINT "12. Наибольший общий делитель"; j
830 REM 145.1.13
840 j = d
850 IF a = -32768 THEN PRINT "13. Сумма 11": GOTO 920
860 IF j < 10 THEN PRINT "13. Сумма"; j: GOTO 920
870 k = j MOD 10
880 WHILE j > 9
890 j = j \ 10
900 WEND
910 PRINT "13. Сумма"; j + k
920 REM 145.2.14
930 j = a: k = 0
940 WHILE j <> 0
950 j = j \ 10: k = k + 1
960 WEND
970 IF k < 1 THEN k = 1
980 PRINT "14. Число цифр"; k
1000 REM 28.1.15
1010 j = 0
1020 IF a = 0 THEN j = 1
1030 IF a > 0 THEN j = 2
1040 PRINT "15. Число корней"; j
1050 REM 29.2.16
1060 IF a = 5 THEN PRINT "16. Отлично."
1070 IF a = 4 THEN PRINT "16. Хорошо."
1080 IF a = 3 THEN PRINT "16. Удовлетворительно."
1090 IF a = 2 THEN PRINT "16. Неудовлетворительно."
1100 IF a = 1 THEN PRINT "16. Плохо."
1110 IF a > 5 OR a < 1 THEN PRINT "16. Такой отметки нет."
1120 REM 106.4.17
1130 IF a > 100 THEN PRINT "17. Очень большое."
1140 IF a > 10 AND a <= 100 THEN PRINT "17. Большое."
1150 IF a <= 10 THEN PRINT "17. Небольшое."
1160 REM 108.5.18
1170 j = a
1180 WHILE j > 9
1190 j = j - 10
1200 WEND
1210 PRINT "18. "; j
1220 REM 113.6.19 Деление чисел
1230 j = d: k = h: l = 0
1240 WHILE j >= k
1250 j = j - k: l = l + 1
1260 WEND
1270 PRINT "19."; d; "/"; h; "="; l; ", остаток"; j
1280 REM 114.9.20 Наименьший делитель числа
1290 j = d: REM Исследуемое число
1300 k = INT(SQR(g)) + 1: REM Верхняя граница проверки
1310 l = 2: REM Проверяемый делитель
1320 m = j: REM Наименьший делитель числа
1330 WHILE l <= j AND l <= k
1340 IF j MOD l = 0 THEN m = l: GOTO 1370
1350 l = l + 1
1360 WEND
1370 PRINT "20. Наименьший делитель числа "; a; "равен"; m
1380 REM 182.1.21
1390 j = a
1400 IF j = 32767 THEN j = 0
1410 j = j + 1
1420 PRINT "21. "; j
1430 REM 68.11.22
1440 j = a: k = b
1450 IF j > 32765 THEN j = 0
1460 IF k > 32765 THEN k = 0
1470 j = j + 1: k = k + 1
1480 PRINT "22. "; j; ", "; k
1490 PRINT j + 1; ", "; k + 1
1500 REM 76.1.23
1510 IF a = 0 THEN PRINT "23. Число равно нулю." ELSE PRINT "23. Число не равно нулю."
1520 REM 10.1.24 Сумма двух чисел
1530 j = 0
1540 IF a > 10000 OR b > 10000 OR c > 10000 THEN j = 1
1550 IF a < -10000 OR b < -10000 OR c < -10000 THEN j = 1
1560 IF j = 1 THEN PRINT "- end 10000 -": GOTO 3000
1570 j = a: k = b
1580 l = j + k
1590 PRINT "24. Сумма "; l
1600 REM 82.1.25 Арифметическая прогрессия
1610 j = -1
1620 FOR k = 1 TO a
1630 j = j + 2
1640 NEXT
1650 PRINT "25. Элемент прогрессии "; j
1660 REM 15.4.26 Сумма арифметической прогрессии
1670 j = 0
1680 IF a > 200 OR b > 200 OR c > 200 THEN j = 1
1690 IF a < -200 OR b < -200 OR c < -200 THEN j = 1
1700 IF j = 1 THEN PRINT "- end 200 -": GOTO 3000
1710 j = 0
1720 FOR k = 1 TO a
1730 j = j + k
1740 NEXT
1750 PRINT "26. Сумма арифметической прогрессии"; j
1760 REM 65.1.27 Сумма арифметической прогрессии
1770 j = 0
1780 FOR k = a TO b
1790 j = j + k
1800 NEXT
1810 PRINT "27. "; j
1820 REM 71.1.28
1830 j = 0
1840 IF a > 100 OR b > 100 OR c > 100 THEN j = 1
1850 IF a < -100 OR b < -100 OR c < -100 THEN j = 1
1860 IF j = 1 THEN PRINT "- end 100 -": GOTO 3000
1870 j = a + b: k = a - b: l = a * b
1880 IF j < 0 THEN j = -j
1890 IF k < 0 THEN k = -k
1900 IF l < 0 THEN l = -l
1910 IF j = 0 OR k = 0 OR l = 0 THEN PRINT "28. 0.": GOTO 2000
1920 WHILE j <> k
1930 IF j > k THEN j = j - k ELSE k = k - j
1940 WEND
1950 WHILE j <> l
1960 IF j > l THEN j = j - l ELSE l = l - j
1970 WEND
1980 PRINT "28."; j
2000 REM 76.1.29
2010 IF a = 0 THEN PRINT "29. Число равно нулю." ELSE PRINT "29. Число не равно нулю."
2020 REM 13.2.30 Квадратное уравнение в целых числах
2030 j = 0
2040 IF a > 50 OR b > 50 OR c > 50 THEN j = 1
2050 IF a < -50 OR b < -50 OR c < -50 THEN j = 1
2060 IF j = 1 THEN PRINT "- end 50 -": GOTO 3000
2070 IF a = 0 THEN
2080 IF b = 0 THEN
2090 IF c = 0 THEN
2100 PRINT "30. Решение - любое число."
2110 ELSE
2120 PRINT "30. Решений нет."
2130 END IF
2140 ELSE
2150 PRINT "30. x = "; -c / b
2160 END IF
2170 ELSE
2180 j = b * b - 4 * a * c: REM Дискриминант уравнения в целых числах
2190 IF j < 0 THEN
2200 PRINT "30. Решений нет."
2210 ELSEIF j = 0 THEN
2220 PRINT "30. x = "; -b / 2 / a
2230 ELSE
2240 q = (-b - SQR(j)) / 2 / a
2250 r = (-b + SQR(j)) / 2 / a
2260 PRINT "30. x1 = "; q; ", x2 = "; r
2270 END IF
2280 END IF
3000 END

Комментарии

Комментариев нет.