Задачник по Pascal

advertisement
ЛОГИЧЕСКИЕ ЗАДАЧИ.
1. Переправа. Трем неутомимый путешественникам надо было переправиться на лодке,
выдерживающей массу не более 100 кг, с одного берега реки на противоположный. Андрей знал
результат своего взвешивания - 54 кг и своего друга Олега - 46 кг. Зато дядя Миша имел массу 98 кг.
Как им надо действовать наиболее рациональным образом, чтобы переправиться через реку?
2. В бочке 28 литров беизина. Имеется два ведра емкостью по 7 л, в которые нужно налить по б л
беизина. Кроме того, есть черпак емкостью 4 л. Как можно осуществить разлив?
3. В бочке хранится несколько ведер беизина, Как из нее отлить 6л беизина в другую бочку с
помощью девятилитрового и пятилитрового бидонов?
4. Задача, которую решил в юности Пуассон (1781-1840). Некто имеет 12 пинт (мера емкости) меда и
хочет отлить из этого количества половину, но у него нет сосуда вместимостью 6 пинт. У него 2
сосуда: один – вместимостью в 8 пиит, а другой - вместимостью в 5 пинт. Каким образом налить 6 пинт
меда в сосуд на 8 пинт? Какое наименьшее число переливаний необходимо при этом сделать?
Разветвляющиеся алгоритмы
5. Имеется 9 золотых монет. Все они одной массы, за исключением одной с дефектом, масса которой
меньше остальных. Требуется при помощи двух взвешиваний на чашечных весах без гирь выделить
фальшивую монету.
6. При тех же условиях выделить фальшивую (более легкую) монету из 8 одинаковых монет тоже при
помощи только 2 взвешиваний.
7. Имеется 25 золотых монет. Все они одной массы, за исключением одной с дефектом, масса которой
меньше остальных. Разработать алгоритм, при помощи которого можно найти дефектную монету за три
взвешивания на весах с чашками.
8. Из четырех внешне одинаковых деталей одна отличается по массе от трех остальных, однако
неизвестно, больше ее масса или меньше. Как выявить эту деталь двумя взвешиваниями на чашечных
весах без гирь?
9. Имеется 4 арбуза различной массы. Как, пользуясь чашечными весами без гирь, путем не более 5
взвешиваний расположить их по возрастанию массы?
10. Как при помощи чашечных весов и гири 200 г разделить 9 кг сахара на 2 пакета - 2 кг и 7 кг, если
разрешается взвешивать не более 3 раз?
Циклические алгоритмы
11. Небольшой воинский отряд подошел к реке, через которую необходимо переправиться. Вдруг
офицер замечает у берега двух мальчиков в лодке. Но лодка так мала, что на ней может переправиться
только один солдат или двое мальчиков. Каким образом все солдаты переправились через реку?
Решение задачи представьте в виде алгоритма.
12. Напишите циклический алгоритм, который воспроизводят стихотворение про поросят:
12 поросят на палубе сидят.
Они песенки поют, им уроки задают
Один из них устал, и с палубы удрал.
И вот вам результат • 11 поросят.
11поросят на палубе сидят...
49. Придумайте три алгоритмы, которые повторяют стихотворение:
У попа была собака, он ее любил.
Она съела кусок мяса
Он ее убил. И в землю закопалI
и надпись написал;
а) ровно один миллион раз; б) бесконечно; в) пока не устанет.
50. Напишите циклический алгоритм, который рассказывает известную сказку про репку:
Посадил дед репку. Выросла репка большая-пребольшая. Стал дед ее тянуть. .Тянет-потянет, а вытянуть
не может. Позвал дед бабку. Тянут-потянут, а вытянуть не могут. Позвала бабка внучку. , И так далее.
Наконец вытянули репку!
51. Напишите циклический алгоритм, который рассказывает сказку про колобка со счастливым концом:
Просит дед бабку: "Испеки мне, старая колобок ". "А где мне муки взять?" "А по амбарам поскреби,
глядишь, и наберется ". Испекся колобок на славу: круглый да румяный. Положила его бабка на окно
1
студить. Взял колобок и укатился. Катится, катится, а навстречу ему заяц: "Колобок колобок, я
тебя съем". Не ешь меня, заяц. я тебе песенку спою По амбарам я скребен, в печке печен, на окошке
стужен, я от бабушки ушёл, а от тебя, заяц, и подавно уйду!" взял колобок и укатился...
КОНСТАНТЫ
1. Определить к какому типу (целой, вещественной или текстовой) относятся нижеследующие
константы:
А) "Привет!"
з) "2+3/12"
н) "1234" у)"" 6)-.3333
и)-19835о) -1%
ф)999%
В)846%
й)985.
П)123Е-П х)”,”
Г) +893.56k) O.O
p)”- DOGI”
ц)12345
Д)0%
л)"- 56.11%" ч) 1234%Е) 583.0 е)003.78
ш)-13% Ж)3465%
м)+1544%
т)|717%
щ)+18.45
2. Указать правильные н неправильные записи констант:
а) 0,2
ж) 7.
д) 0,2
у) 7.
щ),6662
6)005
а) ,6662
о)005
ф) ,6662
щ)"567'
в) +05
я) 0.(333)
п)+05
х).007
ы)’9’
г).007
х)0.555А0
р) .007
ц) 1/2 .
э)"аАbВсС"
д)1/2
л) 0.00003
е)i/2
ч)3. 14
ю) "пЕТЯ"
с) 3.14
м) 3.44.55
т)3.14
ш)7.
я) "happy"
3. Представить, если это возможно, приведенные ниже числа в виде целых N вещественных
констант.
а)27843д) 18240*1034 и) 637.47 6)90425е)(-0,4)3000л) 4787000с)1900*101З)0ж) 14190
4. Определить, какие из записанных констант соответствуют правилам языка программирования и
укатать их тип (целый, вещественный, текстовый или неправильные константы):
А)-482
и) 0
c)9999Е+ll
щ)0003%
б)'Х+АВ’
к)-0%
г) 01
щ)е+4
в)10^6
л) "аргумент"
у) 123,123
ы) 111111%
г) "ОТВЕТ"
м)901%
ф)"
з)БрАвО'
Д) .36
н).Е-12
х).0500
ю) "КЛАСС
с)-3.6Е5
о) "8861%
ц)Е7
я) 12Е+98
ж) 1268467%
н)"937%"
ч) прима"
5.
Любое число х может быть представлено в виде х =[х] + (x), где [x] целая часть числа, а (х) дробная часть числа (0 <= {х} < 1). Например.
2 = 2; 3.25 = 3+ 0.25 . Найти целую и дробную части нижеследующих чисел
а) 2
д)-0.3
и) 0.333
о) 1000.0
г)-0.00
6)3.25
с)-0.9
к) 555О0
и) 289.12
у) 30.03
в) 12.8
ж)-3.75
м) 3.0000
р) 1.989
ф) 04.40
г)0.1
з) -17.2
- н)0.0010
с)852
jc)50.05
в.
Округлите до целого следующие числа:
а) 0
ж)-2.02
м)-23.45
т)-13.499
ш) 9899.75
6)0.325
э)432.7
н) 747.49
v)-8S.61
щ) 45.4999
в)
9.75
и) 0,444
о)0.0999
ф) 44.4455 ы) 1.4999
г)
3.11
й) 55.55
п) 999.501 х) 7.00009
э) +89,0
д)-0.1 к) 1474.55 р)+49.099
п)-67.01
с) -0.95
л) 9.99999 с) 56.00
ч) -1783,8
7. Переведите следующие дробные числа из формата с фиксированной запятой в формат с плавающей
занятой с пятью значащими цифрами в мантисе и двумя цифрами в экспоненте. Какова погрешность?
а)2.718281828
с) 100000.0
я) 6789.00
с)005.023
6)0.00035716
ж) 12345.12345 м)00.001
г)73921
в) -0.453559237
ч) 0.0101010
о) 1000.001
у)0.6391
г) 101325.0
и) 15.16
и) 1771.12
ф) 1.0001
д)-133.32238
к)-456
р) 84124.50
х) 65.6565
8. Переведите следующие дробные числа из формата с плавающей запятой в формат с фиксированной
запятой.
а)1.0737Е+09
е)54321Е-1
л)56.74Е+3
с)84.73Е-3
2
б)6.1803Е-01
ж)12.12Е-12 м) 0.0000009Е+7т)95Е+3
в)-8.8543Е-12 з)0.0011Е-11
о)-75.61Е-2
у) 196379Е-6
г)+18.0018Е-0 и)5Е+5
п) 184.71Е+2
ф)0.ОО1О03Е+7
д)12345Е+5
к)102938Е-4 р)0.9191Е+5
х)0.ООО9О1Е+9
Решение 0.123Ё2» 12.3
ПЕРЕМЕННЫЕ
9. Написать, если это возможно, пять различных имен переменных с использованием только:
а)
одной буквы, например А
б)
одной цифры, например 7
в) двух букв
г) цифры и буквы
10. Пусть имя переменной должно содержать ровно пять символов. Сколько различных имен
переменных можно записать с использованием:
а)двух букв АиВ
б)буквы А и цифры 5
в)буквы А ц цифр 5,1
г)букв А, В и цифры 2 й) символов Q, I,!
ж) буквы В знака >
з) символов " и •*
11.какие из приведенных ниже записей являются именами переменных, а какие нет и почему:
а)Т
ж)Y2
m)D88D
T)firm$
ш)А&А
б) У.
s)STEP2
я)ФАМ
у)Аа
щ)Кliр$
в)Х25
н)ПеровИ. o)rnd()
ф)s%
ы)рRINT%
r)6X
о)SIN(X)
D)fat$
x)FF$%
3)asi
д)6УХ
к) for
p)Let%
ц)ура
ю)ЛЕН
е)Х.6
л) GAMMA с)!!!!
Ч)А$
я)РRIЖ
12. В приведенных ниже записях указать тс, которые являются простыми переменными, тс, которые
являются переменными с индексами, а также указать те записи, которые не являются именами
переменных.
А) Х
и)RЗ(1,8)
p)Ret(7)
ш)Е(1,?)
6)AD1(4)
й)RET{2}
. с)у5
щ)Е1-11
В)В[3]
к)5У
т)У(1,1,2)
ы)R(1,Т)
г)Х+11
л)TEMP[l,56]
у) El
э)F(1]
Д)ТIMЕ
м)У.25[4]
ф)Е(1,1)
ю)Е111
e)GAMMA(5)
н) У5
х)1Е-11
я) БАНЯ
ж)V(Х+3)
о)Е 11.1
ц)Ж5
14.
Имеется одномерный массив В с нумерацией элементов от 1до 100 и двумерный массив А с
нумерацией строк и столбцов от 1 до 50, а также переменные К и L. Записать переменную с индексами,
которая указывает:
а)
десятый элемент массива В;
б)
элемент массива В, который предшествует его К-ому элементу;
в)
элемент массива В, номер (индекс) которого вдвое больше значения L;
г)
элемент массива А, пятой строки и десятого столбца:
д)
элемент диагонали массива А, расположенный в строке с номером К;
е)
элемент К-ой строки массива А, который непосредственно следует за элементом этой строки,
находящимся на главной диагонали;
ж)
элемент массива А, находящийся на пересечении ее К-ой строки и столбца, номер у которого
равен значению пятой компоненты массива В;
з)
элемент вектора В, номер которого на 2 больше значения элемента массива А, расположенного
на пересечении ее К-ой строки и предпоследнего столбца.
СТАНДАРТНЫЕ ФУНКЦИИ. АРИФМЕТИЧЕСКИЕ И ЛОГИЧЕСКИЕ ВЫРАЖЕНИЯ.
15.
Напишите обозначение функций на языке программирования
а)
Арктангенс X
3
б)
Целая чисть от X
л) Тангенс угла X
г)
Синуса углаX
и) Натуральный логарифм X
в) Корень квадратный из X
16, Укажите правильные и неправильные стандартные функции языка программирования,
а)ABS(Х)
д)SIN(X)
и)IХР(Х)
м)LNG(Х) р)SIM(Х)
б)INT(X)
e)COS(X)
Й)LOG(Х)
н)LIN(Х)
с)АТN(Х)
b)SGN(X)
ж)ТAN(Х) k)RND(X)
o)FlX(X)
r)EXP(X)
r)SQR(X)
з)УES(Х)
n)EOF(X)
B)TEN(X) y)SUM(X)
17. Допишите названия стандартных функций языка программирования
а)SI_(X)
Д)-ХР(Х)
и)_ВS(Х)
м)I.Т(Х)
p)_N(X)
б) OS(X)
е)А._(Х)
й)_N_(Х)
н)ЕХ_(Х)
c)C_S(X)
в)T_N(X)
ж)F_Х(Х)
к)СО_(Х)
o)_IN(X)
r)_QR(X)
r)_OG(X)
j)A_(X)
fl)_GN(X)
n)M_(X)
y)_Q_(X)
18. Каким математическим формулам соответствуют следующие арифметические выражения?
Вычислить .значение выражений для А=5, B=4, С=3, D=2.
А/B/(C+D)
д) A*(C+D)/B
и) A+B-C+D
6)A/B/C+D
e)A*C+D/B
fi)(A+B)*(C+D)
«)A/B*C+D
ж)А/(В*(С+D))
r)A/В(C+D)
3)A/(B/(C-fD))
19. Дана запись условия на. естественном языке. Записать их в виде логических выражений по
правилам языка программирования.
а)
X меньше 17
ж)
X меньше -12 или X больше 12
б)
У меньше или равно Х+25
з)
У больше 25 или Z меньше 67
в)
Z+2356 равно X
п) Х*У меньше 0.1 и Z не равно 0
г)
X+Y больше или равно 113
к) X3 меньше (У –18)2и Z больше 19
д)
целая часть Z больше (Х+197)2
л) X не равно 0 и У не равно 0
с)
Х3нсравно(У+27)4
4
ЛИНЕЙНЫЕ ПРОГРАММЫ
ПРОСТОЙ ВВОД И ВЫВОД
1. Вывести на экран дисплея текст: "Я очень хочу знать язык программирование»
2. Вывести на экран дисплея простые числа от 1 до 10 в строчку и в столбик.
3. Написать программу, которая выводит нечетные числа до 10 в строчку, а четные - в столбик.
4. написать программу, которая печатает счастливые шестизначные числа в несколько колонок.
(Счастливым называется шестизначное число, у которого сумма первых трех цифр равна сумме
последних трех цифр.) Программа должна печатать как можно больше счастливых чисел.
5. Написать программу, которая спрашивает имя и затем здоровается с его обладателем.
6. Составить программу, которая запрашивает число, вычисляет и выводит на дисплей вторую третью,
четвертую кпятую степень этого числа.
7. Написать программу, которая запрашивает по отдельности имя, отчество и фамилию, а потом
выводит их в строчку с пожеланием успехов в информатике.
ВЫЧИСЛЕНИЯ ПО ФОРМУЛАМ
8. Составить программы для вычисления по следующим формулам:
(x+3a)3−(3a−x2)2
а) у=(х2/2 –z2/lnx2)/(cos2x+sin2x)
з)y=
a2+x3
12a−13b 2d−16
x5+x6
x6+x8
б) y= 14x−15c +17x+18
и)y=25ax−x8 + 25ax
2
18−x +c
9d
x3+3cd
в)y=c−x2−18 + d−9
й)y=
17x−3
г)y= 6x+5 −
д)y=
18x−0,3
7p−17a
+
11−4x
13ab
x−17 a−b−x
18ac−b
3c−15
е)y= 3ab−c +
x5+x7+(3cd+x7)
10a−cd
10a−c
к)y=cx2−b2 − (c2+b2)10
11c−5k 6c−c2
л)y=
k−x2
+c2+k2
c+30
(x7+b7)3−2cx8
ж)y= x+x8+2cx8+3
9. Определить время падения t камня на поверхность земли с высоты h.
10. Смешано V1 литров воды температуры t1 с V2литрами воды температурыt2. Найти обьем и
температуру образовавшейся смеси.
11. Три сопротивления R], R2, и R3 соединены параллельно. Найти сопротивление соединения R = RIR2-R3/( R1-R2+R1-R3+R2R3).
12. Три сопротивления Rl, R2, и R3 соединены последовательно. Найти со противление соединения R =
Rl + R2 + R3.
13. Определить частоту собственных колебаний тока f в электрическом контуреf=1/(2п(LC)1/2. где L индуктивность катушки, С - емкость конденсатора.
ЗАНИМАТЕЛbНЫЕ ЗАДАЧИ
1.Члени семьи Петуха очень любят клевать зерна. Глава семейства склевывает 120 зерен в час, его жена
- 100 зерен, а его цыплята (их в семье 25) – 40зерен в час. Написать программу, которая вычисляет и
выводит на экран сколько зерен поедает петушиная семья за К лет (365 дней в году). .М месяцев (30
дней в месяце) и В дней, если спят они по 6 часов в сутки, а когда не спят, то всегда едят.
2. Инженер Форд получает зарплату D долларов. Половину своей зарплаты
он тратит на квартплату, треть остатка на еду. Четвёртую часть на транспортные расходы написать
программу которая вводит значение зарплаты Dи вычисляет и выводит на экран количество денег
которое остаётся у инженера Форда на карманные расходы после обязательных трат.
3. Неизвестный показал падишаху придуманную им игру в шахматы. Падишаху игра очень
понравилась. На вопрос о вознаграждения безымянный создатель ответил так: "Мне не нужно золото.
Дай мне зерна. На первую клеточку положи I зерно, на вторую - 2, на каждую следующую - в два реза больше, чем на предыдущую." Падишах согласился. Напишите программу, которая бы вычислила и
выводила на экран количество зёрен которое должно помещаться на клеточке N (на шахматной доске 54
клеточки). Какое максимальное число может запомнить компьютер?
4. 1 сентября, знакомясь со своими учениками, Елена Федоровна обнаружила среди них М Наташ и Р
Петь. Вить было в два раза больше, чем Наташ и Петь вместе взятых, а Лен в четыре раза меньше, чем
5
Вить. Составить программу, которая бы выводила на экран количество учеников с одинаковыми
именами в классе 1 сентября во время их знакомства с учительницей?
5. Написать программу, которая переводит расстояние S из метров в ярды Y (1ярд = 0,92 и), футы F(1
фут = 0.3 м) и дюймы D (1 дюйм - 0,024 м).
ЗАДАЧИ ПОВЫШЕННОЙ СЛОЖНОСТИ
1.Даны 2 действительных числа a и b. Вычислить и вывести на экран их сумму, разность, произведение
и частное.
2.Написать программу, позволяющую окрутить число х двух знаков после запятой. Для этого нужно
вычислить целую часть выражения (х10y+0.5)/10
3.Вычистить минимальное число из двух данных a, b по формулеmin(a,b)=(a+b-/a-b/)/2
4.Написать программу для нахождения наибольшего из двух чисел X и У по формуле тах(х, у)=(х+у+(xy)sign(x-y))/2
5.Написать программу вычисления значения 1 - 2х + Зх2 – 4x3- и 1 + 2х +3x2 +4х3 где х - данное число
позаботиться об экономии числа операций.
6.Написать программу вычисления а10, где а - данное число если получившаяся программа требует
более четырех умножений (использование функции sqr тоже считается умножением), то дать более
экономное решение.
7.Написать программу, которая вводит год рождения студента и выдает на экран его возраст.
8.Население некоторой страны в 1904г. Было а1 человек, а в 1968г. стало а2 человек. Написать
программу, которая вычисляет среднегодовой прирост населения за этот период при условии, что он
был постоянным.
9. Написать программу, предназначенную для ввода двух чисел вычисления среднего
арифметического и среднего геометрического и выхода результата средние геометрическое
вычисляется но формуле (х1х2…хn),Где х1,х2,…хn>0
10. Треугольник задан координатами своих вершин (х1,у1), (X2, y2) и (x3,y3).
Найти: а) периметр треугольника, б) площадь треугольника.
ПРОСТЫЕ УСЛОВНЫЕ ОПЕРАТОРЫ IF
1. Составить программу, которая определяет является ли введенное в компьютер целое число
а) четным или нечетным;
б) положительным или отрицательным;
в)
делится ли нацело на 8;
г)
число его разрядов меньше или больше 4;
д) число единиц в нем меньше или больше 7;
с) число десятков в нем меньше или больше 3;
ж) по абсолютной величине больше или меньше 1524.
Результат вывести на экран
2. написать программу, вводящую два вещественных числа с клавиатуры и
печатающую
а)
большее из этих двух чисел;
б)
меньшее из этих двух чисел;
н)сначала меньшее, а потом большее;
г) сначала большее, а потом меньшее,
3. составить программу вычисления значений функции, заданной функцией
х2, еслих < 0
17c2 − 1
,
если x < 10
a) y = { х
x2 − 3
, еслих > 0
2
если x = 10
в) γ = 3mp − x,
13c − x2
x2 − g3
,
если x < 6
если x > 10
3x − 8
{ x2 − 2 ,
если x = 6
б) γ = 32a2 − b2,
35c + x
,
если x > 6
{
x2
6
3x − 4a
,
4a − 6x
г) γ = 3ac − x2,
2c − b2
{ b2 + c2 ,
если x < 4
если x = 4
если x > 4
x2 + 4x − 7,
1
д) γ = {
,
x2 + 4x − 7
25 − x2
,
x2 − 25
е) γ = 17 − 2a + x,
25 + x2
{ 2x2 + 25 ,
18 − x2
,
3c − 2
ж) γ = 8d − 3ax2,
x2 − 3
{ x3 − 9 ,
3x − 49
,
100 − 2x
з) γ = x − 10a,
105x + b
{ 18a − c ,
если x < 2
если x ≥ 2
если x < 6
если x = 6
если x > 6
если x < 3
если x = 3
если x > 3
если x < 100
если x = 100
если x > 100
a − b2
,
a + b2
и) γ = x − 3cb,
3 − 2c
{ x2 − 18 ,
если x < 3
если x = 3
если x > 3
−4,
если x < 0
если 0 ≤ x < 1
к) γ = {x2 + 3x + 4,
(x2 + 3x + 4)2,
если x ≥ 1
x∗x+b∗b
,
x+b
л) γ = x ∗ x − b ∗ b
,
x+b
{
2x ∗ x,
1
если x + b > 0 и b > 0
если x + b > 0 и b ≤ 0
,
1
5x2
м) γ = ab2 + 3c,
1
,
{b(5 + c2)
если x + b < 0
если c < 0
2c −
если c = 0
если c > 0
1
,
если c = 5
ac − ab2
3abd,
если c < 5
н) γ =
1
,
если c > 5
{(a − b)(a + b)
x2 − 49,
если x > 10
1
о) γ = {
,
если x < 10
81 − x2
3c,
если x = 10
8x + c,
если x > 0
если x < 0
п) γ = {3d − x2 − 16,
dc,
если x = 0
23dx + 49 − xd,
если x < 10
1
р) γ = {
+ cd,
если x > 10
x+a
3x3 − 4,
если x = 10
4ax − d,
если x = 2
x2 − 9,
еслиx > 2
с) γ = { 1
,
еслиx < 2
25 − x2
1
cosx +
,
если x < 6
tg + x2 − c
т) γ = {
2a + cosx + c2,
если x > 6
3cx,
если x = 6
1
,
если x < 4
x2 − 3c
у) γ = {
tgx + 3(x2 − 2a),
если x > 4
3c2,
если x = 4
cos2x −
x2 − 81,
a2 + x2,
ф) γ = { 1
,
64 − x2
81 − x2,
1
х) γ = {
,
x2 − 81
3x + c,
25 − x2,
1
ц) γ = {
,
x2 − 81
3c + x,
если x < 1
если x = 1
если x > 1
если x < −3
если x > −3
если x = −3
если x > 3
если x < 3
если x = 3
18 + x2,
если x < 0
если x > 0
ч) γ = {ab + 9 − x2,
acd,
если x = 0
7
4.Определить, какая аз заданных фигур: квадрат или круг имеет большую площадь и во сколько раз,
если они заданы соответственно стороной А и радиусом R
5. даны два действительных числа. Заменять первое число нулем, если оно меньше или равно второму,
и оставить числа без изменения в противном случае. Результат вывести на дисплей.
6. Даны действительные числа х, у(х≠у). Меньшее из этих двух чисел заменить их полу суммой, а
большее - их удвоенным произведением, результат распечатать,
7. Даны два числа если первое больше второго по абсолютной величине (модулю), то их сумму
уменьшить в пять раз. Иначе их сумму увеличить в пять раз. Результат вывести на экран.
8
УСЛОВНЫЕ ОПЕРАТОРЫ IF СО СЛОЖНЫМИ УСЛОВИЯМИ (NOT, OR, AND)
8. Ввести действительные числа А, В, С. Проверить, выполняются ли нижеследующие соотношения и
выдать сообщение об этом на экран:
а)А<В<С;
б)С=А,С>В;
я) С < А или С> В;
г) C> А и С > В;
д) С < А а С < В.
9. Проверить могут ли действительные числа А,В,С быть
а) длинами сторон треугольники,
б)длинами сторон прямоугольного треугольника.
в) углами треугольники,
г) углами прямоугольного треугольника,
д)сторонами равнобедренного треугольника,
е)
сторонами равностороннего треугольника
ж)
углами равностороннего треугольника,
з) сторонами paвностороннего треугольника и вывести сообщение об этом.
10.Найти большее из а) двух, 6) трех, в) четырех данных чисел и вывести его на дисплей.
11.Расположить а) два, 6) три, в) четыре числа, введенные с клавиатуры, в порядке возрастания,
12. Решить уравнение ах3+bx=0
13. В треугольник со сторонами а, b, с вписан круг радиуса г. найти площадь треугольника, не занятую
кругом. (Указание. Определить площади круга и треугольника).
14. Определить стоимость железнодорожного билета туда и обратно, если известно расстояние до
пункта назначения и длительность пребывания в нем, учитывая, что если расстояние превышает 1000
км, а длительность пребывания превышает 7 дней, то железнодорожная компания даёт скидку30%.
НЕСКОЛbКО УСЛОВНЫХ ОПЕРАТОРОВ IF
15. В связи cперегруженностью улиц города Таракуты, мэрия этого города приняла решение; по четным
числам ездят только легковые автомобили, а по нечетным - только грузовые. Напишите программу,
которая бы в ответ на ведённое число выводила, какие машины могут в этот день проезжать но тесным
улицам города Таракугы: легковые или грузовые.
16. Високосный год. Является ли данный год високосным ?(У високосного года номер делится или на
400, или ни 4, но не делится не 100.)
17. Написать программу, которая получая два числа х и у, будет выводить
сообщения:
- "почти равны", если х и у равны, причем два значения считаются равными, если они отличаются
меньше, чем на 0.001;
- "меньше", если х и у не равны и х < у;
- "больше", если х и у не равны и х > у.
18. В переменных А, В и С записаны три действительных числа. Известно ,что два из этих чисел равны,
а третье отличается от них. Найти число, отличное от двух других и вывести его.
19. Составить программу сравнения двух правильных дробей a/bи c/d. Вывести результат сравнения.
22. Составить алгоритм решения квадратного уравнения аx2 + bx + c = 0
23. Написать программу полного исследования корней квадратного уравнения ах2 + bх + с = 0. Если
корней нет, то вывести сообщение об этом, иначе должны быть выведены один или два корня.
24. Написать программу полного исследования корней биквадратного уравнения ах4 + bх2 + с = 0.
Если корней нет, то вывести сообщение об этом, иначе вывести два или четыре корня.
25. Ввести действительные числа x,y,z. Вычислить и вывести на экран: a) max(x+y+z, xyz); б)
min(x+y+z/2, хуz).
26. Ввести действительные числи а, b, с. Проверить, выполняются ли неравенства a<b<c и выдать
сообщение об этом на экран.
27. Даны действительные числа а,b,с. Удвоить эти числа, если а>b>с, и заменить их абсолютными
значениями, если это не так. Результат вывести экран.
28. Определить, какая из трех точек A(xl,yl), В(х2, у2), С(х3, у3 ), заданных своими координатами, ближе
всего расположена к началу координат.
9
ВЛОЖЕННЫЕ УСЛОВНЫЕ ОПЕРАТОРЫ IF
27. Точка плоскости задана своими координатами х, у. Написать программу, при выполнении которой
определяется, принадлежит ли данная точка плоской фигуре, являющейся кольцом с центром в точке
(0,0), с внутренним радиусом 3 и с наружным радиусом 4.
28. Два прямоугольника заданы длинами сторон. Написать программу, после выполнения которой
выясняется, можно ли первый прямоугольник целиком разместить во втором (соответствующие
стороны прямоугольников параллельны).
29. Определить принадлежит ли точка треугольнику (треугольник задан координатами вершин).
30. Задано n троек чисел. Вводя их по очереди и интерпретируя как длины сторон треугольника,
определить сколько троек можно использовать для построения треугольника.
31. Написать программу, которая получая 2 числи х и у будет выводить:
-если х и у равны, причём два значения считаются равными , если они отличаются меньше чем на 0.001
-1, если х и у не равны и х <у
-2, если х и у не равны и х >у
ОПЕРАТОР ВЫБОРА CASE
32. Универсальный переводчик. Написать программу, которая бы переводила слова "ДОБРЫЙ ДЕНb"
по выбору на один из языков,
33. Найти большее из трех чисел a,b,c Результат присвоить переменной у и вывести на экран.
34. Состарить программу, определяющую число корней уравнения х2 = а в зависимости от а.
35. Вычислить по заданному номеру и значению одного из элементов прямоугольного равнобедренного
треугольника значения всех его остальных элементов, если таковыми являются катет а (первый
элемент), гипотенуза с (второй элемент), высота h, опущенная из вершины прямого угла на гипотезу
(третий элемент), радиус rвписанной окружности (четвертый элемент).
36. Составить программу позволяющую получить словесное наименование школьных оценок.
37. Богатырь подъезжает к развилке 3 дорог. Перед развилкой лежит камень, на котором написано;
"Налево пойдешь, будешь убит, а конь будет жив; направо пойдешь будешь жив, а конь будет мертв;
прямо пойдешь, будешь убит и конь будет мертв". Напишите программу, которая бы выводила
написанные на камне сообщения в зависимости от номера выбранной дороги:1- налево. 2-прямо, 3 направо.
38. Написать программу вычисления площади круга по номеру (n) и значению (а) одного из его данных
элементов, если таковыми являются радиус (первый элемент), диаметр (второй элемент), длина
окружности (третий элемент).
39. Определить число дней в месяце, если известны номер месяца m (целое число от 1 до 12) и целое
число j, которое равно 1, если год високосный, и равен 0, если год не високосный.
ЗАДАЧИ ПОВЫШЕННОЙ СЛОЖНОСТИ
40. В компьютер вводятся по очереди координаты п точек. Определить, сколько из них попадет вкруг
радиусом R с центром в точке (а,b).
41. Заданы три числа D, M, Y, которые обозначают число, месяц и год. Найти номер N этого дня с
начала года. Указание: високосные года - это те, у которых номер делится нацело на 4.
42.Написать программу, вычислить при заданном a, n и вывести результат на экран если а=:
1 то S= n!
2 то S = 1! + 2!+…+n!
3 то S=1+1/1!+ 1/2! + ... +1/n!
Где ! пример если n=4 4!=1*2*3*4; если n=5 5!=4!*5 или 5!=1*2*3*4*5
10
АРИФМЕТИЧЕСКИЕ ЦИКЛЫ
1. Составить программу, вычислить и вывести результаты на экран дисплея:
а) у = х3 - бах2 -15, х меняется от -5 до 20
к) у = sin x+ах3 - 3, х меняется от -10 до 16
3
б) у = x -16 , х меняется от -2 до 8
м)у = х2-2ах-3b, b меняется от-10 до 12
в)у = х2 - 25, х меняется от -10 до 7
н) s = (1+l/l2)(l + 1/22)...(1 + 1/n2),n = 12;
2
г)у = ах - 18с , х меняется от -5 до 7
ц)s= 1/sin l + l/(sin l + sin 2) + l/(sin l + ... + sin n),
д)у=18х2-7а, х меняетсяот-10 до10
n=20;
с) у = (1/2)х4 - 8bx2, b меняется от -3 до 17
ч) s = 1/a + l/(a(a + 1)) + ... +l/(a(a + 1)... (a +n)), n=35:
3
ж)у = 15х + 4х – cos a x, х меняется от -20 до 1
ш)s = 1/a + l/a2+l/a4 +... + 1/а2n
2
3
з)у = 5х -2ax-b , b меняется от -15 до 4
и) у= 4а2-7х3+2ах , х меняется от -15 до 1
2. Дано действительное число х. Вычислить и вывеcти на экран:
b = х –х3/3! + x5/5! –x7/7! + х9/9! –x11/l1! +x13/13!
3. Написать программу вычисления по формуле b = (1-1/2)(1-1/3)... (1 - 1/а), где а задано.
4. Написать программу вычисления суммы (х1)2+(х2)2+ (х3)2 + ... + (хn)2 при заданном х и n.
5. Даны натуральные n и m. Написать программу вычисления величины n(n+m)(n+2m)…(n+nm)
6. Написать программу вычисления суммы для заданного N .S=1+1/22+1/32+1/42+…+1/n2.
7. Составить таблицу стоимости порций сыра весом 50, 100, 150, ..., 1000 г (цена 1 кг- - X лей) и
вывести ее на экран.
8. Написать программу, которая будет печатать таблицу пересчета значений температуры в градусах
Фаренгейта (F) в градусы по Цельсию (С), Такое преобразование задастся следующей формулой F =
(9/5)С + 32. Таблица должна содержать значения температуры в градусах Фаренгейта от -50 до 250с
шагом 10 и соответствующие значении в градусах Цельсия. 10.
9. Написать программу, которая будет печатать таблицу пересчета значений температуры в градусах
Цельсия (С) в градусы но Фаренгейту. Формулу для преобразования выведите из предыдущей задачи.
Таблица должна содержать значения температуры в градусах Цельсия от -50 до 150 с шагом 5 и
соответствующие значения в градусах Фаренгейта.
10. Напечатать таблицу соответствия между весом в фунтах и весом в килограммах для значений от 1
до 10 фунтов с шагом 1 фунт (1 фунт = 400 г).
11. Напечатать таблицу перевода расстояний в дюймах в сантиметры (1 дюйм = 2.54 см) для значения
от 1 до 10 дюймов с шагом 1.
ИТЕРАЦИОННЫЕ ЦИКЛЫ
12.Написать npoграмму нахождения среди чисел 1, 1+1/2, l+l/2+1/3, ... первого, большего данного числа
А. Напечатать значение этого числа.
13.Вычислить значение первого элемента и его порядкового номера бесконечной последовательности
х, х2/2!, х3/2!...хn/n!... удовлетворяющего условию хn/n! <E.
14.Составить программу определения количества цифр в натуральном числе n, если после деления этого
числа па 10 k раз в целой части числа будет ноль, где k - количество цифр в числе n.
15.Начав тренировки, спортсмен в первый день пробежал 10 км. Для увеличения выносливости ему
необходимо повышать норму бега через одну тренировку на 15% от нормы предыдущей тренировки.
Спортсмен тренируется каждый день. Какой суммарный путь он пробежит за 30 дней.
16.Начав тренировки, спортсмен в первый день пробежал 10 км. Каждый г следующий день он
увеличивал дневную норму на 10% от нормы предыдущего дня. Через сколько дней: а) спортсмен
будет пробегать в день больше 20 км; 6) пробежит суммарный путь 100 км.
17. Некоторая сумма денег S помещена в банк под годовой процент Р. Через сколько лет она
увеличится на 50%
18. .Некоторая сумма денег S помещена в банк под годовой процент Р. Через сколько лет она удвоится
19. Некоторая сумма денег S помещена в банк под годовой процент P. Через, сколько лет она утроится.
20. Население двух стран равно N1 и N2, а прирост населения Р1 и Р2, соответственно. Дано, что
N1>N2 и Р1<Р2, Вычислить через сколько лет население N2 превзойдет население N1.
21. Население города составило на начало года 0.62 млн. человек, а годовой прирост за предыдущий
год составил 3.7%. Считая темп прироста населения, равный 3,7%, постоянным, определить через
11
сколько лет население, города составит 1.5 млн. человек.
22. Урожай ячменя составил 20 ц с га. В среднем каждые 2 года счет применения передовых
агротехнических приемов урожай увеличивается на 5%. Определить, через сколько нет урожайность
достиг пег 25 ц с 1 га.
ЦИКЛЫ И РАЗВЕТВЛЕНИЯ
23.Составить программу, вычислять и вывести на экран результат:
3 − 4 𝑐𝑜𝑠 𝑎𝑥, 𝑥 меняется от − 2 до 5 через 1
(𝑥 + 3𝑎)2 − 𝑥 − 7𝑎, 𝑥 меняется от 5 до 10 через 1
a)y=
6𝑥 − 8𝑎 − 4𝑥 2 − 7𝑎, 𝑥 < 2
(3 + 5 sin 𝑥), 𝑥 > 10
{
x 2 + tg(cosx)? x меняется от − 3 до 3 через 0,5
2cosx + 2x − a, x меняется от 3 до 12 через 1
б) y= {
(x 3 − 3x 2 )(x 2 − 2x + 7), x < 3
11 − 62ax, x > 12
10(tgx + x 2 − 8a), x меняется от − 15 до 10 через 1
ctgx + 2sinx, x меняется от − 10 до 0 через 2
в) y=
x 2 + 2sinx, x < 15
{
cos(2x) + 3ax 2 , x > 0
1 − 1.5x − 3x 2 − 25a − x, x меняется от − 3 до 4 через 1
2a − x 2 , меняется от 4 до 13 через 1,5
г) y=
2 cos(2x) , x < −3
2
{
x − sin3(3x), x > 13
1
, x меняется от − 7 до 2 через 1
x2 +1−x
д) y=
cosx + tg(x 2 + 8x), x меняется от 2 до 17 через 2
(x2 −x3 )
5.2x+8.7x2
3
, x < −7
{
2x 2 + 3.7x + x + 2a , x < 17
(1 − cosx)(1 + cosx) + x 2 + 89 , x меняется от − 3 до 4 через 1
x(x 2 − bc), x меняется от 4 до 10 через 0,5
e) y=
x 2 + x − ac , x < −3
{
tgx + 2cosx, x > 10
24. Написать программу, которая выводит на экран все делатели нечетных чисел a диапазоне от 1 до 40.
25. Написать программу, которая будет печатать правильные (собственные) делители заданного целого
числа М. Правильными делителями числа М называются все делители этого числа, за исключением его
самого. Например, если М=12, то правильные делители есть 1, 2, 3, 4, 6.
26. Написать программу, которая будет печатать сумму правильных делителей заданного целого числа
М. Например, М=12, то сумма правильных делителей есть 1 +2+3+4+6= 16.
27. Число называется совершенным, если оно равно сумме своих правильных делителей. Таковым,
например, является число 6, поскольку оно равно 1 +2+3.Напечатайте все совершенные числа от 1 до
заданного М.
28. Назовём неполным число, которое больше суммы своих правильных делителей (например, 9
больше 1 + 3). Напечатайте все неполные числа в интервале от 1 до заданного М.
29. Назовем избыточным число, которое меньше суммы своих правильных делителей (например, 12
меньше 1+2 + 3+4+6). Напечатайте все избыточные числа в интервале от 1 до заданного М.
30. Дано n целых чисел. Получить сумму тех чисел данной последовательности, которые: а) кратны 5;
б) нечетны и отрицательны.
12
31. Написать программу получения первого простого числа, большего N.
32. Даны натуральное число n, целые числа аi .... аn. Найти количество и сумму тех членов этой
последовательности, которые делятся на 5 и не делятся 7.
33. Даны натуральное число, действительные числа аi .... аn.Получить удвоенную сумму всех
положительных членов последовательности аi .... аn
34. Доказать, что любую сумму в рублях (без копеек), большую 7 рублей можно выплатить без сдачи
трешками и пятерками. Написать программу нахождения по данному целому числу n>7 пары целых
неотрицательных чисел а и b таких, что n= 3а + 5b,
35. Написать программу получения в порядке убывания всех делителей числа N.
36. Напасать программу вычисления наибольшего значения из последовательности sin i (i+1) ; i=1,2,…n и
суммы этой последовательности.
37. Написать программу определения числа элементов, кратных заданному а, из последовательности
i3 – 3i + n, i=l, 2,…n.
38. Написать программу вычисления наименьшего общего кратного двух натуральных чисел а и b.
39. Написать программу вывода всех "счастливых" среди шестизначных номеров. «Счастливыми»
считаются такие шестизначные номера(числа),в которых сумма первых трех цифр равна сумме
последних трех цифр.
40. Дано натуральное n. Написать программу вычисления суммы тех элементов последовательности
i3 - 3in2.. +n (i=1, 2..n), которые являются нечетными числами.
41. Написать программу нахождения среди чисел 1, 1+1/2. 1+1/2+1/3, ...первого, большого данного
числа а.
42. Дано положительное число с. Последовательность a1, а2, a3, ... образована по следующему закону
а1 = (1 - ½)(1 - 1/3) … (1 – 1/(i+1)). Найти первый член an последовательности, для которого
выполняется условие |an-an-1|<c. Написать программу выполнения этого задания.
43. Написать программу переработки данного целого n>=10 в целое число, запись которого отличается
от записи числа n перестановкой первой и последней цифр.
44. Написать программу, n в результате которой выясняется, входит ли цифра 2 в запись данного
целого числя n.
45. Написать программу вычисления суммы цифр данного натурального числа.
ВЛОЖЕННЫЕ ЦИКЛЫ
46.Написать программу, А Б Р А К А Д А Б Р А
выводящую на экран
АБРАКАДАБР
следующий текст:
АБРАКАДАБ
АБРАКАДА
АБРАКАД
АБРАКА
АБРАК
АБРА
АБР
АБ
А
47.Написать программу, которая выводит треугольник Паскаля, в котором в начале и конце строки
стоит 1, а любое другое число есть сумма двух чисел стоящих справа и слева над ним.
1
11
121
1331
14641
48.Напистаь программу выводящую на экран последовательности:
А)122333…999999999
Б)аббввв…яяяяя…я
В)яююэээ… аааа …а
13
49.Написать программу выводящую на экран следующий узор:
А)** ** ** ** ** ** ** ** ** **
Б)* В) * Г) * * * * * Д) <<<<<<<<<
** ** ** ** ** ** ** ** **
**
*
****
>>>>>>>>>
** ** ** ** ** ** ** ** ** **
***
*
***
<<<<<<<<<
** ** ** ** ** ** ** ** **
****
*
**
>>>>>>>>>
** ** ** ** ** ** ** ** ** **
*****
*
*
<<<<<<<<<
** ** ** ** ** ** ** ** **
50. Написать программу, которая в текстовом режиме диcплея строит график функции :
a) y=sin(x) б) y=cos(x) d) y=x2;
51. Вычислить приближенно площадь фигуры, ограниченной функцией Y=x2 и прямой Y= 25, Разбивая
отрезок изменения х на 10 частей и суммируя площади прямоугольников с основанием, равным 1/10 отрезка
изменения х , и высотой, определяемой значением функции в середине основания.
14
ЗАДАЧИ ПОВЫШЕННОЙ СЛОЖНОСТИ
52.Написать программу, вычисляющую и выводящую N чисел по следующему закону: первые дна равны 2, а
последующие являются суммой двух предыдущих. Пример а1=2, а2=2, а3= а1+ а2, а4= а2+ а3
53.Числовая последовательность, первые два члена которой равны единице, а каждый последующий начиная
с третьего, есть сумма двух предыдущих, называемая рядом Фибоначчи: 1, 1, 2, 3, 5. 3, 5, 8, 13 где 2=1+1,
3=1+2, 5=2+3 и т.д.). Написать программу, которая вводит число М, затем вычисляет и печатает значения
первых М чисел Фибоначчи.
54.Сформировать число Фибоначчи, не превосходящее заданное натуральное n.
55. Заданное натуральное число n представить в виде суммы различных чисел Фибоначчи.
56. Одноклеточная амеба каждые 3 часа делится на 2 клетки. Определить сколько клеток образуется чрез
3,6,9,12,…,24часа. Результат вывести на экран.
57.Дано целое число n≥10. Написать программу получения последовательности предпоследней цифр
записи числа n.
58. Дано натуральное N. Написать программу, в результате выполнения, которой получается натуральное М,
записываемое теми же цифрами, что и N, но в обратном порядке.
59.Найти наибольший общий делитель(НОД)двух целых неотрицательных чисел по алгоритму Евклида.
60.Найти НОД трех целых неотрицательных чисел по алгоритму Евклида.
61.Вывести на экран таблицу умножения на 3, 5, 7, 9. Как обороте тетради 12 листов клетка.
62.Написать программу, определяющую какой день недели был чаще всего в году, если год не високосный
(365 дней) и начинается с четверга. Если таких дней несколько, то за результат принять самый ранний в
неделе день.
63.Написать программу, определяющую какой день недели был реже всего в году, если год високосный (366
дней) и начинается с понедельника. Если таких дней несколько, то распечатать все эти дни.
64.Написать программу, которая выводит на экран все делители четных чисел в диапазоне от 1 до 40.
(Делители нечетных чисел выводить ненужно).
65.Два числа называются взаимными, если каждое из них равно сумме всех точных сомножителей другого,
не считая самого числа. Например, 220 и 284 - взаимные числа, поскольку сомножителями числа 220
являются 1,2,4,5,10,11,20,22,44,55,110, в сумме составляющие 284, а сомножители 284 - 1,2,4,71,142 - в сумме
дают 220. Написать программу, которая будет читать два числа М и N и на ходить все пары взаимных чисел
в диапазоне от М до N.
66.Совершенные числа. Натуральное число называется совершенным, если оно равно сумме всех своих
собственных делителей, включая 1. Напечатать все совершенные числа, меньшие чем заданное М.
67.Число называется простым, если оно делится только на себя и на 1. Напечатать все простые числа,
меньшие заданного М. Подсказка: воспользоваться алгоритмом Эратосфена, который состоит в том, что
выписываются подряд все числа от 1 до М и затем вычеркивается каждое второе число, большее 2, потом
каждое третье, большее 3, потом каждое пятое, больше 5 (каждое четвертое уже было вычеркнуто , когда
вычеркнули каждое второе), и так далее до М/2.
ФОРМИРОВАНИЕ ЭЛЕМЕНТОВ МАССИВА.
1.Одномерный массив А(N) заполнить
а)Числами в возрастающем порядке(1,2,…N)
б) числами в убывающем порядке (N, N-1,…1)
в)чётными числами в возрастающем порядке (2, 4, …,2N);
г) нечётными числами в возрастающем порядке (1, 3,…,N-1)
д)чётными числами в убывающем порядке (2N, 2N-2,…,2)
е) печатными числами в убывающем порядке (2N-1, 2N-2,…,1)
и вывести их на экран монитора.
2. Вывести с клавиатуры N(N>10)действительных чисел записать их в массив А и вывести на экран.
А) в строчку
Б) в столбец
В) в несколько столбцов.
3. Задан массив А содержаний N чисел. Написать программу, распечатывающую:
а)только отрицательные элементы массива;
б) только целые числа массива;
в) только чётные числа;
г)только числа, находящиеся на нечётных местах
15
д) только числа, большие 25;
е)только отрицательные числа
Числа должны быть распечатаны в том порядке, в котором они встречаются в исходном массиве
4. Написать программу, осуществляющую
а) циклический сдвиг элементов массива А(М) влево все элементы массива сдвигаются влево на одну
позицию, а первый элемент переносится на последнюю позицию.
б)циклический сдвиг элементов массива А(М) влево на N позиций. Все элементы массива сдвигаются влево
на N позиций, а первые N элементом на последние N позиций
в)циклический сдвиг элементов массива В(М)вправо. Вес элементы массива сдвигаются вправо на одну
позицию, а последний элемент переносится в первую позицию.
г) циклический сдвиг элементов массива В(М) вправо на N позиций. Все элементы массива сдвигаются
вправо на N позиций, а последние N элементов переносятся на первые N позиций,
5. В массив А записано N целых чисел. Из этого массива получить новый массив В, переписав в него только,
а) положительные элементы;
б) четные элементы;
в) отрицательные элементы;
г) нечетные элементы больше чем 9;
д) порядковые номера положительных элементов массива А.
Полученный массив В распечатать.
6. Даны N действительных чисел , которые хранятся в массиве А. Все числа попарно различны.
А) Написать программу обмена пар соседних элементов.
Сравнить элементы из одного массива в другой в обратной последовательности, т.е. первый элемент массива
записывается последним, второй элемент предпоследним и т.д.
7.Дан массив А содержащий числа. Построить одномерный массив В и С, значениями которых будут
соответствовать значения
А) Положительных и отрицательных элемента массива А.
Б) Четных и нечетных элементов массива А.
В) Целых и дробных чисел.
Г) Больших и меньших по абсолютной величине 10.
8.Даны два массива А(N) и B(N). Сформировать массив С, состоящий из элементов, содержащихся :
А) Как в массиве А, так и в массиве В
Б)В массиве А, а не содержащихся в массиве В.
В) Или в массиве А или в массиве В
Г) В массиве В и не содержащиеся в массиве А.
9. Массив T(N) содержит только 0 и 1.Заменить 0 на 1 и наоборот 1 на 0. Вывести оба массива.
10. В массиве А(31) записана среднесуточная температура воздуха за один месяц. Распечатать те дни , в
которых воздуха было:
А) выше нуля
Б) ниже нуля
11.В массиве А(31) записано количество осадков, которые выпадают в течении месяца, в массиве В(31)
температура за эти же дни. Распечатать те дни , в которых:
А) не выпало осадков
Б) Осадки выпали в виде дождя
В)Осадки выпали в виде снега.
12. В многоэтажном доме N квартир. Число четных живущих в каждой квартире записанных в массиве А.
Распечатать в каких квартирах живут:
А) один человек
Б)два человека
В) три человека
Г) четыре человека
Д)пять человек и больше.
13. В массиве А(N) записаны фамилии М(М=N) учеников одного класса которые упорядочены по алфавиту.
В этот массив вставить фамилию нового ученика так , чтобы упорядочение по алфавиту сохранилось.
14. В массиве А(N) записаны фамилии N учеников одного класса , которые упорядочены по алфавиту из
этого массива удалить фамилию выбывшего ученика так, чтобы фамилии следовали друг за другом.
16
15. В массиве А записаны оценки N учеников, а в массиве В – их фамилии. Вывести на экран фамилии тех
учеников, которые:
А) только отличные оценки
Б) плохие оценки
В) хорошие оценки
Г) отличные хорошие оценки.
АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ НАД ЭЛЕМЕНТАМИ МАССИВОВ
16.В массиве А длиной N вычислить:
а) сумму квадратов положительных элементов этого массива.
Б)произведение отрицательных элементов массива
В) сумму положительных элементов этой последовательности, кратных 3
Г)Сумму четных отрицательных элементов массива А
Д) Сумму всех элементов массива, кратных 3 и 7
Е)произведение четных неотрицательных элементов массива
Ж)среднее значение среди четных чисел.
З) среднее значение среди нечетных чисел.
17.Высилить сумму элементов массива Т содержащего N элементов, при чем если сумма станет больше или
равной 1000, прекратить вычисления, вывести результат.
18. Даны два X и Y вектора, записанные в массивах X(N) и Y(N). Вычислить и распечатать:
А) длину вектора Х, длина вектора вычисляется по формуле L= (X(1)2+X(2)2+… +X(N)2)1/2
б) скалярное произведение этих векторов по формуле
X(1)*Y(1)+X(2)*Y(2)+…+X(N)*Y(N)
В) сумма этих векторов каждый элемент которого равен сумме соответствующих элементов массивов A(N)и
B(N)
Г)разность этих векторов, каждый элемент которого равен разности соответствующих элементов массива
A(N) и B(N)
19.Рост N учеников класса представлен в виде массива Р. Рост девочек кодируется положительными числами,
а рост мальчиков отрицательными. Вычислить и распечатать:
А) средний рост мальчиков
Б) средний рост девочек
В) средний рост учеников
Г)насколько средний рост мальчиков отличается от среднего роста девочек.
Подсчет и поиск элементов массива
ПОДСЧЕТ И ПОИСК ЭЛЕМЕНТОВ В МАССИВЕ.
20.В одномерном массиве А длиной N найти количество отрицательных элементов массива
21.Для последовательности целых чисел записанных в массиве А(N) найти кол-во четных положительных
чисел.
22. Для N целых чисел хранящиеся в массиве А вычислить кол-во нечетных элементов , имеющих четные
индексы.
23. Дан одномерный массив целых чисел А(N). Написать программу подсчета кол-ва положительных и
отрицательных чисел в массиве.
24.Массив Т(N) содержит только 0 и 1. Подсчитать сколько 0 и сколько 1 содержится в массиве. Можно ли не
использовать оператор If?
25. Дан целочисленный массив А содержащий N элементов. Сосчитать и напечатать, сколько различных
чисел в этом массиве. Например: Массивы, содержащие числа 5,7,5 различных чисел два: 5, 7.
26. Информация о температуре воздуха за месяц задана в виде массива Т(31). Определить сколько раз
температура опускается ниже нуля градусов Цельсия.
27.Информация о среднесуточной температуре воздуха за месяц задана в виде одномерного массива.
Определить, сколько дней температура была ниже среднемесячной
28. Информация о количестве осадков ,выпавших в течении месяца и о температуре воздуха задана в виде
массива А(31) и В(31), соответственно. Определить, какое кол-во осадков выпало в виде дождя, какое в виде
снега (считать, что идет дождь, если температура воздуха больше 0 градусов.)
29. Найти наибольшее число, хранящееся в одномерном массиве А длиной N.
30. Найти наименьший элемент последовательности, который вычисляется по формуле i3sin(n+i/n), i=1,2,…,n.
(Для хранения элементов использовать одномерный массив А(N))
17
31.Даны 20 действительных чисел, которые хранятся в массиве А.В этом массиве поменять местами
наибольший и наименьший элемент.
32. В одномерно массиве А(N) найти и распечатать второй по величине элемент.
33. Даны пять различных целых чисел. Найти среди них два числа модуль разности которых имеет:
А) наибольшее значение
Б) наименьшее значение.
34.Даны действительные числа X,Y1,...,Yn последовательность y1,...,yn найти два члена, среднее
арифметическое которых ближе всего к Х.
ЗАДАЧИ ПОВЫШЕННОЙ СЛОЖНОСТИ
35. Числовая последовательность, называемая рядом Фибоначчи, состоит из чисел 1,1,2,3,5,8,13... Первые два
члена ряда равны единице. Каждый последующий член, начиная с третьего, вычисляется как сумма двух
предыдущих. Например, 8 = 3 + 5, 13 = 8 + 5 и т.д. Написать программу, которая вводит число членов ряда
Фибоначчи N, затем вычисляет и печатает значения этих чисел. (Для хранения чисел Фибоначчи используйте
одномерный массив F(N)).
36. Сформировать массив С на основе массивов целых чисел А(N) и В(N). Элементы массива С
Характеризуют частоту встречаемости элементов массива В в массиве А.
37. Даны целые числа а1,…,an( в этой последовательности могут быть повторяющиеся члены)
а) получить все числа, которые входят в последовательность по одному разу
б) получить все числа, взятые по одному из каждой группы равных членов;
в) найти число различных членов последовательностей;
г) выяснить, сколько чисел входит в последовательность по одному разу;
д) выяснить, сколько чисел входит в последовательность более чем по одному разу;
38. Даны два массива А и В длиной М и N, соответственно. Элементы этих массивов упорядочены по
возрастанию. Образовать из этих массивов третий массив С длиной М+N, который также будет упорядочен
по возрастанию.
39. В области 10 районов. Размер площадей засеваемых пшеницей в каждом районе, хранятся в массиве S и
средняя урожайность (число центнеров с 1 га) в каждом районе записана в массиве Р, Определить
количество пшеницы, собранное в области и среднюю урожайность по области.
40. Пассажирский самолет может поднять груз общей массой 40т. Составить программу для определения
массы почтового груза, которую можно поместить в самолет после посадки пассажиров и загрузки их
багажа. Известен вес каждого из N пассажиров и его багажа.
41.В одномерном массиве А размерностью N найти сколько раз встречается в нем максимальный элемент.
42.Написать программу, после выполнения, которой становится известно имеются ли в целочисленном
массиве C(N) два одинаковых подряд идущих элемента.
43. Дан одномерный массив целых чисел, А(N). Написать программу вычисления суммы элементов массива,
предшествующих первой по порядку компоненте, значении которой не принадлежит интервалу [b,c]. При
отсутствии такой компоненты в качестве искомой суммы. Взять сумму всех элементов массива.
44. Задай целочисленный массив длиной N. Найти длину самой длинной последовательности подряд идущих
элементов массива
А) равных 0.
Б) равных Х.
45. Массив Т содержит N чисел. Сгруппировать все нули в конце массива.
Например; если Т=0 5 0 2 7 1, то нужно поучить Т= 5 2 7 1 0 0 0.
46.В массиве А(М) каждый элемент равен 0, 1 или 2. Представить элементы массива, чтобы сначала
располагались все нули, все единицы и наконец все двойки. (Дополнительный массив не используется.)
47.Массив Т длинной N содержит 0, 1, 2 и 3. Написать программу, которая вместо 0 записывает 1, вместо
1 записывает 2 , вместо 2 – 3, вместо 3 – 0. Постараться ее написать без оператора If.
48. Массив Т содержит N чисел, отсортированных в порядке возрастания причем некоторые из них
повторяются несколько paз. Требуйся вставить в Т лишь по одному экземпляру каждого значения.
49. Массив Т содержит N чисел, отсортированных в порядке возрастания, причем некоторые из них
повторяются несколько раз. Требуется оставить в Т лишь по одному экземпляру каждого значения и
поставить ему в соответствии другой массив U, содержащий количество повторений каждого числа в
исходном массиве. Если Т=1 1 1 3 4 4 7... то Т = 1 3 4 7 … U= 3 1 2 1…
50. Задан массив Х длинной М. Найти длину К самой длинной последовательности идущих подряд чисел для
которых выполняется соотношение Х(р+1)< Х(р+2)>X(р+3)< ...>X(p+k).
51. Задан список участников соревновании по плаванию в символьном массиве А и занятые ими места в
18
соответствующих элементов массива В. Упорядочить. фамилии участников в соответствии с занятым
местом.
IIpu выборе места строительства жилого дома вблизи металлургического завода необходимо учитывать,
«розу ветров» в данной местности. На основании данных ежедневного определения направления ветра,
проводимого в течении года, определить целесообразное расположение промышленной и жилой зон.
53. Найти наибольший общий делитель элементов целочисленного массива A(N).
54. Написать программу, реализующую перестановку наибольшего и наименьшего элементов одномерного
массива А(М).
55. Написать программу которая в заданном массиве чисел позволяет найти числа встречающиеся несколько
раз.
56. Написать программу, которая для заданного массива чисел длиной N позволяет выяснить образуют ли эти
числа палиндромом (перевертыш), т.е. верно ли, что A(1) = A(N), A(2) = A(N-1),...
57. Найти два наибольших значения среди N чисел, хранящихся в массиве А.
58. Дана последовательность из N элементов. Найти минимальный элемент из элементов
последовательности, который меньше своих соседних элементов (предыдущего и последующего).
59. Даны целые числа, записанные в массивы A(N) и B(N). Среди чисел из массива А нет повторяющихся,
нет их и среди чисел из массива В.
а) Построить пересечение чисел из массивов А и В (т.е. получить в каком нибудь порядке все числа,
принадлежащие как массиву А, так и массиву В.
Б) Получить все числа из массива А, которых нет в массиве В.
Двумерные массивы
ФОРМИРОВАНИЕ ЭЛЕМЕНТОВ МАССИВА
1. Написать программу построения массива А размером MxN, элементы которого вычисляются по
формулам:
a)aij = i/(i+j)
6) aij = (N-i)/(M-j):
в) aij = i+2j
г aij =3+ij;
л) aij = i + Mj;
c) aij = i+j;
где i = 1, 2…N; j = 1,2,..., M.
2. В двумерном масcиве А размером МхМ создать единичную матрицу, т.е. матрицу у которой
1000
элементы главной диагонали равны 1, а остальные элементы равны 0. На рисунке дан пример
0100
единичной матрицы для М=4.
0010
0001
3. Заполнить двумерный массив А размером MxN случайными целыми числами в интервале от 1 до M*N.
Для этого использовать функцию генерации случайных чисел.
4.В двумерном массиве А размером МхМ заполнить обратную диагональ 1 , а все остальное- 0.
001
010
100
5. Двумерный массив А размером МхМ заполнить ниже и саму обратную диагональ 1. а выше
001
обратной диагонали – 0.
011
111
6. Двумерный массив А размером МхМ заполнить обратную диагональ и выше неё 1, а все
111
остальное 0.
110
100
7.
В двумерном массиве А размером МхМ элементам 1-ой строки присвоить значение 1,
1111
второй строки – 2 и т.д.
2222
3333
4444
8. В двумерном массиве А размером МхМ 1-ого столбца присвоить значение 1 , второго столбца - 1 2 3 4
2 и т.д. результат вывести на экран.
1234
1234
1234
9. в двумерном массиве А размером МхМ заполнить строки 0 и 1 через одну. Результат вывести на 0 0 0 0
экран.
1111
0000
1111
19
10. В двумерном массиве А размером МхМ заполнить столбцы 0 и 1 через одну. Результат
вывести на экран.
1010
1010
1010
1010
11. Двумерный массива А размером МхМ заполнить 0 и 1 в шахматном порядке, причём элемент 0 1 0 1
(1,1) должен быть равен 0. Содержимое массива вывести на экран.
1010
0101
1010
12.Для заданного числа М заполнить двумерный массив размером МхМ натуральными числами от 1 1 2 3
до М2 по спирали, содержимое массива вывести на экран.
894
765
13.Для заданного числа М заполнить двумерный массив А размером МхМ натуральными числами 1 2 3
от 1 до М2 зигзагом, содержимое массива вывести на экран.
654
789
14.Для заданного числа М заполнить двумерный массив А размером МхМ натуральными числами 1 2 3
от 1 до М2 по строчкам слева направо, содержимое массива вывести на экран.
456
789
15.Дан массив A(N,N). Заменить, нулями все ее элементы, расположенные на главной диагонали и выше ее.
16. Дан массив A(N,N). Заменить положительные элементы на нули.
17. Дан массив A(N,M). Записать на место нулевых элементов новые данные, вводимые с клавиатуры.
18. Дан массив А(N,N)- Заменить отрицательные элементы строк на нули.
АРИФМЕТИЧЕСКИЕ ВЫРАЖЕНИЯ НАД ЭЛЕМЕНТАМИ МАССИВОВ
19. Написать программу, которая бы выполняла ввод значений двух двумерных массивов А и В одинакового
размера MxN и их поэлементное сложение (т.е. сложение элементов массивов, имеющих одни и те же индексы). Результат сложения записать в массив С того же размера и вывести на экран.
20. Написать программу, которая бы выполняла ввод значений двух двумерных массивов А и В одинакового
размера MxN и их поэлементное вычитание (т.е. вычитание элементов массивов, имеющих одни н те же индексы). Результат вычитания записать в массив С того же размера и вывести на экран.
21. Написать программу, которая вводит значения элементов массива А размером MxN и выполняет
умножение каждого элемента этого массива на число S. Эта операция называется умножение матрица на
число. Результат операции записать в массив В и вывести на экран.
22. Написать программу, которая вводит значения элементов массива А размером МхМ и меняет местами
столбцы и строки (транспонирование матрицы). Результат транспонирования матрицы записать массив В и
вывести на экран.
23. Для двумерных массивов А и В размерностью МхN написать программы проверки следующих свойств
транспонирования матриц (операция транспонирования обозначается знаком'):
А)А"= (А')'=А; б)(А + В)' = А’ В’; в)(АВ)’ = B’A’
24. Дан массив А размерностью 3xN. Написать программу, в результате которой выясняется, какие из троек
а1i, а2i, а3i, (i=1,... N) могут cлужить сторонами треугольника. Результаты вывести в одномерный массив В,
состоящий из единиц и нулей. Если b1 = 1, то а1i а2i, а3i, могут служить сторонами треугольника, если bi=0, то
нет.
25. Вычислить сумму положительных элементов каждой строки двумерного массива А(6, 10) и вывести ее на
дисплей.
26. В двумерном массиве А размером 5x10 поменять местами строки с номерами 2 и 5.
27. Найти суммы элементов прямой и обратной диагоналей двумерного массив А(10,10).
28. Вычислить среднее арифметическое значение элементов каждого столбца двумерного массива А (10, 5)
29.Вычислить сумму элементов двумерного массива A(10, 10), расположенных над главной диагональю.
Подсказка: для элементов массива, расположенных выше диагонали, номера строк (i) изменяются от 1 до 9, а
номера столбцов от i +1 до 10.
30.Дан двумерный массив размерностью Nx9. Найти среднее арифметическое: а) для всех столбцов; б) для
строк, имеющих четные номера: в) дл элементов главной диагонали.
31. В массиве А размером NxN найти среднее значение положительных элементов, находящихся ниже
главной диагонали: а) включая саму диагональ; б) не включая диагональ
32.В двумерном массиве, содержащем равное число строк и столбцов М найти:
а)сумму всех элементов;
б)
произведение положительных элементов;
20
в)
сумму положительных нечетных элементов.
27. В массиве, содержащем равное число строк и столбцов М найти сумму диагональных элементов.
28. В массиве, содержащем равное число строк и столбцов М, найти сумму элементов не лежащих на
главной диагонали.
ПОИСК ЗНАЧЕНИЙ В МАССИВЕ
35.Двумерный массив А размерностью MxN содержит неотрицательные элементы. Найти и вывести на экран
номер строки с максимальной суммой.
36. В двумерном массиве A(N, M) найти наибольший элемент, номер строки и столбца, в котором он
расположен.
37.Найти разность максимального и минимального элементов в двумерном массиве B(N, М).
38. Найти наименьший элемент двумерного массива A(N, М) и записать нули в те строку и столбец, на
пересечении которых он находится. Найти наименьший элемент массива и номера строки и столбца где он
находится. Организовать два цикла для записи нулей в эту строку и столбец. Вывести на печать полученную
таблицу.
39. Найти наибольший элемент каждого столбца двумерного массива С(N, М).
40. В массиве А размерностью NxN найти минимальный элемент среди элементов главной диагонали и
вывести его на экран.
41. В массиве А размерностью NxN найти максимальный элемент среди элементов обратной диагонали.
42. В массиве А, содержащем N строк и М столбцов, найти максимальный и минимальный элементы по
каждой строке и вывести их на экран.
43. В массиве А, содержащем равное число строк и столбцов М найти значения наибольшего и наименьшего
из элементов, лежащих на главной диагонали.
44. Дан массив А, содержащий N строк и столбцов. Среди четных элементов находящихся выше главной
диагонали массива (исключая диагональ найти минимальное и максимальное значение.
45. Дан массив А размером MxN. Некоторый элемент этого массива назовём седловой точкой, если он
является одновременно наименьшим в своей строке и наибольшим в своем столбце. Напечатать номера
строки и столбца какой-нибудь седловой точки или сообщение в том случае, если такой точки нет.
46. Найти наибольший элемент главной диагонали двумерного массива А(20,20) и выписать всю строку, где
он находится. (Найти наибольший элемент и его номер, организуя цикл по одной переменной.)
47. В массиве А размером MxN найти количество элементов, больших среднего значения.
48. В массиве А размерностью MxN найти количество ненулевых элементов по каждой строке.
49. В целочисленном массиве А, имеющем равное число строк и столбцов NxN найти количество
положительных элементов, лежащих на главной диагонали.
50. В массиве А имеется N строк и М столбцов. Определить в нем количество: а) нулевых элементов; б)
четных положительных элементов.
51. В массиве А имеется N строк и М столбцов. Сколько в массиве элементов, равных X.
52. В массиве А размерностью MxN найти в каждой строке количество элементов кратных 7.
ОДНОМЕРНЫЙ И ДВУМЕРНЫЙ МАССИВЫ
53. Дав массив А размерностью MxN. Написать программу построения одномерного массива В
размерностью М, элементы которого соответственно равны суммам элементов строк массива А.
54. Дан двумерный массив А его размер МхN, написать программу построения одномерного массива В из
М элементов, которые соответственно равны произведениям элементов строк массива А.
55. Дан массив А с размерностью MxN элементов. Написать программу построения массива В из М
элементов, которые соответственно равны наименьшим элементам строк массива А.
56. Дан двумерный массив А размером MxN. Написать программу построения одномерного массива В,
состоящим из N элементов, которые соответственно равны значениям средних арифметических элементов
столбцов массива А.
57. Дан двумерный массив А размерностью МхN и одномерный массив В размерностью М*N элементов.
Осуществить ввод значений в двумерный массив, а затем переписать их в одномерный а) по строкам, б) по
столбцам.
58. Дан двумерный массив А размерностью MxM и одномерный массив В размерностью М элементов,
Осуществить ввод значений в массив А, а за тем переписать в одномерный массив В элементы главной
диагонали массива А.
21
ЗАДАЧИ ПОВЫШЕННОЙ СЛОЖНОСТИ
59. Написать программу, которая в заданном массиве, чисел позволяет найти числа, встречающиеся
несколько раз.
60. Дан двумерный массив, из четырех строк и четырех столбцов, в каждой ячейке которого находится
буква. Написать программу, которая печатает максимальное число слов, буквы для которых берутся в
соседних ячейках массива.
61. В множестве точек на плоскости, координаты которых записаны в двумерном массиве А размерностью
Nх2, найти пару точек с максимальным расстоянием между ними.
62. Из заданного множества точек на плоскости выбрать две различные точки так чтобы, количества точек
лежащих по различные стороны прямой, проходящей через две эти точки, различались наименьшим образом.
63. Определить радиус и центр окружности, на которой лежит наибольшее число точек заданного на
плоскости множества точек.
64. Определить радиус и центр такой окружности, проходящей хотя бы через 3 различные точки заданного
множества точек на плоскости, что минимальна разность количеств точек, лежащих внутри и вне
окружности.
65. Расстояние между двумя множествами точек - это расстояние между наиболее расположенными точками
этих множеств. Найти расстояние между двумя заданными множествами точек на плоскости.
66. Задано множество точек М в трехмерном пространстве. Найти такую из них, что шар заданного радиуса и
центром в этой точке содержит максимальное число точек из М.
67. На плоскости задано 50 точек своими координатами. Найти из них точку, ближайшую к началу
координат.
68. Расположить элементы каждой строки двумерного массива А(20,10) в порядке возрастания.
69. Написать программу построения латинского квадрата. Латинский квадрат это массив NxN, элементы
которой выбраны от 1 до N так, что каждое число встречается только один раз в каждой строке и в каждом
столбце.
ОБРАБОТКА ТЕКСТОВЫХ ДАННЫХ
1. Написать программу, которая для каждой введенной буквы выводит ее номер в алфавите.
2. Написать программу, которая по номеру буквы в алфавите выводила бы написание буквы.
3. Подсчитать суммарное количество букв "а" и "б" в данном слове.
4. Определить, сколько раз в тексте встречается буква А.
5. Написать программу, подсчитывающую число вхождений заданной буквы в текст.
6. Задан текст, содержащий не более 255 символов. Определить частоту, с которой встречаются в тексте
различные буквы русского (английского, румынского) алфавита (в долях от общего количества букв).
7. Для введенного текста определить из каких букв он состоит и распечатать их.
8. В заданном тексте подсчитать сколько раз встречалась каждая буква.
а) делать различия между большими и маленькими буквами,
б) не делать различия между большими и маленькими буквами
9. Напишите программу, которая определяет, какие буквы алфавита не встретились в заданном тексте ни
разу.
10. Определить какие символы и сколько раз встречаются в тексте.
11. В массиве А содержится М слов .Написать программу которая в соответствующие элементы массива В
записывает длины слов из А.
12. Написать программу, которая для каждого выделенного символа определяет его принадлежность к
буквам , цифрам или спецзнакам и выводит сообщение об этом на экран.
13. Дан текст на русском или английском языках. Написать программу, которая автоматически определяет на
каком языке написан текст.
14. Написать программу, которая бы вводила слово, а потом выводила его на экран задом наперед (т.е.
последняя буква выводится первой, а первая - последней).
15. Написать программу, определяющую является ли палиндромом некоторая цепочка литер, введенных как
данные. Результаты проверки вывести на экран. (Палиндромом или "перевертышем" называется цепочка
литер, которая читается одинаково слева направо и справа налево, т.е. символы симметричны относительно
середины цепочки.)
16. Ученики зашифровывают свои записки, записывая все слова а тексте наоборот. Составить программу а)
зашифровывающую сообщение; б) расшифровывающую сообщение.
17.Написать программу, которая в слове находит первый символ, являющийся цифрой, и выводит позицию
цифры в слове. Например, для КОД=12 ответ будет 5.
22
18.Написать программу, которая в слове, состоящем из букв, перед каждой группой одинаковых букв будет
вставлять цифру, соответствующую числу букв в этой группе, а от группы будет оставлять только одну
букву. На пример, слово ПППАССККККАЛЛЬЬЬ должно быть преобразовано в 2П1А2С4К1А2Л3Ь.
19. Написать программу, которая бы подсчитывала число гласных и согласных букв во введенном слове и
выводила сообщение об этом на экран.
20. Написать программу, которая бы подсчитывала число глухих и звонких согласных во введенном слове и
выводила сообщение об этом на экран.
21. Написать программу, которая бы вводила слово и выводила бы сначала все согласные, а потом все
гласные, содержащиеся в этом слове.
22. Написать программу, которая по названию месяца выводила бы название времени года, которому он
принадлежит.
23. Написать программу, которая по названию месяца выводила бы название предыдущего и последующего
месяцев, если они существуют.
24. Написать программу – переводчик, которая бы по названию месяца на русском языке выводила бы
название месяца на английском языке.
25. Написать программу, которая по названию времени года выводила бы названия месяцев, из которых оно
состоит.
26. Написать программу, которая вводит дату в формате 27.11.78 и выводит се в формате 27 ноября 1978.
27. По дате в формате 13.01.1999 программа должна выводить дату в формате 01/13/1999.
28. Шифрование слов. Принцип шифрования состоит в следующем. Если некоторая буква из шифруемого
слова является К-ой буквой в обычном алфавите, тс вместо нее должна быть взята буква из К-ой позиции
"секретного" алфавита. "Секретный" алфавит отличается от обычного тем, что в нем другой порядок букв.
Напишите npoграмму, которая преобразует обычное слово в шифрованное и выводит на экран.
29. Дешифрация слов. Напишите программу, которая осуществляет побуквенную расшифровку введенного
слова и его печать. Принцип расшифровки основан на том, что необходимо выделить букву из шифрованного
слова и узнать ее номер в "секретном" алфавите (см. предыдущую задачу). По тому номеру определить букву
в обычном алфавите и добавить ее в расшифрованное слово.
30. Определить сколько слов содержится в тексте Т , где разделителем слов служит а) один пробел б) три
пробела в) n пробелов,
31. Из текста Т$ выбрать и допечатать слова, содержащие букву L.
32. Цифры встречающиеся в тексте Т, записать словами. Например, 1-один, 2-два.
33. Текст состоит из последовательности слов, разделенного одним или несколькими пробелами. Выведите
слова этого текста одно под другим (в столбик),
34. Текстом называется последовательность слов, разделенных одним или большим числом пробелов.
Написать программу, убирающую из текста лишние пробелы, т.е. оставить между словами по одному
пробелу. Результирующий текст вывести на экран.
35. Сравните две даты в формате ДД.ММ.ГГ и выведите сначала более раннюю дату, а затем более позднюю.
36. Написать программу, которая определяет число слов в тексте.
37. Назовем сложностью предложения сумму количества слов и знаков препинания. Определить сложность
заданного предложения.
38. Определите, какое слово в данном тексте самое длинное.
39. Определите, какое СЛОВО в данном тексте самое короткое.
40. Определить среднюю длину слова в заданном тексте. Знаки препинания и пробелы не относится к словам.
41. Задан текст. Напечатать, буквы, на которые начинаются слова в тексте.
42. На какую букву начинается больше всего слов в тексте. Вывести эту букву и количество слов.
43. Определить на какую букву заканчивается больше всего слов. Распечатать эту букву и количество слов.
44. Написать программу, которая определяет, есть ли в заданном тексте слова длины N, и выводит все эти
слова.
45. В заданном тексте везде заменить слово А1 на слово А2 (длины слов не совпадают).
46. Определить, встречается ли последовательность символов X в тексте S. и если встречается, то вывести
сколько раз.
47. Проверить, является ли частью данного слова х слово у.
48. Написать программу, которая в слове, состоящем из строчных букв в содержащем не менее двух букв,
подсчитать число различных пар букв (парой букв будем называть любые две рядом стоящие буквы слева).
49.Упорядочить литерный массив F в порядке возрастания его значении.
ЗАДАЧИ ПОВЫШЕННОЙ СЛОЖНОСТИ
23
50. Имеется записанное в двоичном виде число – цепочка нулей и единиц .Написать программу, которая бы
прибавляла к нему 1. Цепочка представляется как символьная переменная и содержит не более 15 символов.
51. Вводится арифметическое выражение в виде цепочки литер, и надо написать программу, которая
проверяет содержит ли эта цепочка а) одинаковое число открывающих и закрывающих скобок; 6) правильно
ли расставлены эти скобки.
52. Проверить сбалансированность скобок в арифметическом выражении.
52. Напишите программу для вычисления 2N для очень больших N, используй цепочку литер для
запоминания последовательных степеней двойки.
53. Первый игрок вводит в компьютер слово, состоящее не менее чем из двух букв, но так, чтобы оно не
появлялось на экране, Компьютер перемешивает буквы, и на экране появляется программа из исходного
слова, которое второй игрок должен угадать.
54. Составить, программу-тест по предложенным вопросам и интерпретации результатов.
56. В заданном тексте подсчитать частоты встречаемости следующих подряд символов А, В, С в любом
порядке,
57. Для хранения текста в сжатом виде найти часто повторяющиеся последовательности из двух букв и
заменить их кодом. В качестве кода использовать символы, не встречающиеся в тексте. Составить также
таблицу кодов.
58. Для предыдущей задачи написать программу, декодирующую текст хранящийся в сжатом виде, используя
заданную таблицу кодов.
59. В заданном тексте найти слова, которые встречаются более трех раз, закодировать, их и сжать текст,
заменив слова кодами. Составить таблицу кодов.
60. считая, что в памяти компьютера хранится таблица кодов часто встречающихся слов, ввести текст в
массив, заменяя слова кодами после ввода. Распечатать текст в исходном виде, т.е. заменяя коды словами.
61. Составить программу "Меню". Компьютер задаёт вопрос о наличии основных продуктов, их количестве и
требуемом числе порций, сообщает те блюда, которые можно приготовить, предлагает выбрать из них желаемое и сообщает его рецепт.
62. Составить программу назначения студентов на стипендию по результатам сессии, используя следующие
правила а) если вес оценки 5, назначается повышенная стипендия; б) сели оценки 4 н 5, назначается обычная
стипендия: в) если есть оценки 3, стипендия не назначается.
63. В результате работы программы должен быть напечатан список группы с оценками и средним баллом
каждого студента и два списка фамилий (назначенных на повышенную и обычную стипендию).
ИГРЫ С КОМПЬЮТЕРОМ
1. Игра "Жизнь". Имеется 25 полей в горизонтальном и вертикальном направлениях. Каждое поле может
быть либо пустым, либо содержать X -признак наличия организма. Каждое поле (за исключением полей,
находящихся на краю доски) имеет восемь соседних полей. Следующее поколение организмов может быть
получено в соответствии с правилами:
а) Рождение: организм рождается в том пустом поле, которое имеет в точности трех соседей;
б) Смерть: организм, имеющий 4-х и более соседей, умирает от перенаселения. Организм, имеющий
менее 2-х соседей, умирает oт одиночества
в) Жизнь: организм, имеющий двух или трех соседей остаётся жить в следующем поколении.
Поля на краю доски – бесплодны- организмы в них не могут рождаться и жить - поэтому эти поля можно не
принимать во внимание. Ввести первоначальную конфигурацию организмов. Вывести на печать исходный
массив, вычислить следующее поколение организмов и поместить в новый массив, переписать содержимое
нового массива в исходный, повторить этот цикл несколько раз.
2. Одиннадцать предметов. На столе - одиннадцать одинаковых предметов, например спичек. Первый
играющий берет 1, 2 или 3 предмета, затем второй играющий берет себе из числа оставшихся предметов,
также по своему усмотрению, 1, 2, или 3. Так поочередно оба играющих берут каждый раз не более, чем по
три предмета. Проигрывает тот, которому приходится взять последний предмет. Написать программу, в
которой одним из партнеров является компьютер. Подсказка: анализ выигрышной стратегии надо начинать с
конца игры.
3. Побеждает нечет. Из М спичек двое играющих поочередно отнимают не менее одной и не более К
спичек. Выигравшим считается тот, у кого по окончании игры окажется нечетное число спичек. Составить
программу, по которой компьютер выигрывает.
4. Цзянъшицзы. Китайская национальная игра, буквально переводимая как "выбирание камней". Играют
двое. Играющие поочередно берут камни из двух кучек, соблюдая следующие правила:
а) из одной кучки можно брать, любое количество камней (даже сразу всю кучу);
24
б) можно брать камни одновременно из двух кучек, но непременно по одинаковому количеству из каждой
кучки.
Выигрывает тот, кто сможет взять последний камень. Напишите программу, по которой компьютер
выигрывает.
5.Кто первый скажет «сто»? Играют двое. Первый участник игры называет произвольное число, не
превышающее 10, т.е. он может назвать 10 или всякое меньшее число. Второй игрок прибавляет к
названному числу своё целое число, также не превышающее 10, и сообщает сумму. К этой сумме от 4 до 7,
сумма превышает 7 баллов, для каждого из которых есть текст заключения по результатам обработки анкеты:
а) Вы способны поступать так, как необходимо;
б) У Вас есть изъяны в характере, которые мешают Вам быть до конца твердым, собранным, т.е., чтобы
решить ту или иную задачу. Вы должны на ней сосредоточиться, заострить внимание, прилагать волевые
усилия;
в) Вы человек отнюдь не волевой и Вам нужно серьезно работать над своим характером.
СЛУЧАЙНЫЕ ЧИСЛА, ВЕРОЯТНОСТЬ, СТАТИСТИКА.
11. Случайное число. Получить случайное четырехзначное число, все цифры которого различны. Нуль может
быть старшей цифрой числа.
12. Получить с помощью датчика случайных чисел:
а) 25 действительных чисел, лежащих в диапазоне от -50 до 50;
б) 30 целых чисел, лежащих в диапазоне от -20 до 20;
в) 20 неотрицательных действительных чисел не превосходящих 40
г) 35 неотрицательных целых чисел, не превосходящих 1000;
д) 27 натуральных чисел, не превосходящих 20;
с) натуральное n, не превосходящее 30, и п действительных чисел, лежащих в диапазоне от -100 до 100;
ж) 15 чисел, среди которых 7 двоек и 8 троек;
з) перестановку чисел 1, .... 12, в которую входит каждое из чисел 1..... 12;
и) 28 малых латинских букв.
13. Написать программу, вычисляющую скользящее среднее в одномерном массиве для трех точек, т.е. для
элементов с индексами 1, 2 и 3, затем для элементов 2, 3 и 4 и тд. Результаты усреднения записать в другой
массив.
14. Один простой способ проверки случайности числовых последовательностей состоит в подсчете частоты
появления в них каждой цифры. Если последовательность случайна, то вероятность появления каждой из
цифр одинакова и равна 0.1. Написать программу, генерирующую 100 случайных чисел и печатающую
относительную долю появления каждой из них в общей последовательности.
15.Получить случайное четырехзначное число, все цифры, которого различны- Нуль может быть старшей
цифрой числа.
16.Подсчитать, сколько раз встретилось целое число L среди К случайных целых чисел из интервала [1,6].
17.Печатать последовательность 10 различных случайных целых чисел из интервала (1, 20). Подсчитать
частоту их появления и построить гистограмму.
18. Генерируется случайным обратом целое число из интервала (1,10)50 раз. Подсчитать, сколько раз выпало
каждое целое число, построить гистограмму частот выпадения чисел из интервала (1, 10].
19. Построить гистограмму из 10 строк, длина каждой строки задается случайным образом в пределах от К до
I. символов.
20. Написать программу игры в кости по следующим правилам: играющий называет (вводит в компьютер)
целое число А от 1 до 6. Затем генерируются три случайных целых числа из интервала [1,6] (бросаются
кости). Если среди трех сгенерированных чисел число А встретилось один раз -игрок получает 5 очков, два
раза - 10 очков, три раза- - 15 очков, не встретилось ни разу - 0 очков. Число играющих не более 5, кости для
каждого играющего бросаются по очереди.
21. Напишите программу, моделирующую розыгрыш тиража "СПОРТЛОТО 6 из 49": программа должна
выдать 6 неповторяющихся чисел в интервале от 1 до 49.
22. Имеются N температур. Надо вычислить их среднее значение и вывести те температуры, которые равны
или больше этого среднего значения.
23. Метеостанция каждый месяц посылает сводку о последовательности максимальных суточных
температур, а затем минимальных температур. Суточным разбросом температур называется разность для
каждого дня между максимумом и минимумом. Требуется вычислить средний дневной разброс температур
для данного месяца.
25
24. Ученик загадывает число из известного заранее диапазона. Написать программу, которая бы за
минимальное число попыток угадывала бы это число.
ГЕОМЕТРИЯ
25. Даны действительные положительные числа а, b, с, d. Выяснить, можно ли построить с такими длинами
сторон:
а)
четырехугольник; 6) квадрат;
в) прямоугольник;
г) параллелограмм;
д)ромб.
26. Даны действительные положительные числа а, в, с. Выяснить, можно ли построить, с такими длинами
сторон:
а) треугольник;
б)
равнобедренный треугольник
в) равносторонний треугольник.
27. В множестве n точек на плоскости, заданных своими координатами (xl, yl), (х2, у2) ... ,(хn, уn), найти пару
точек с максимальным расстоянием между ними.
28. Расстояние между двумя множествами точек, заданных своими координатами -это расстояние между
наиболее близко расположенными точками этих множеств. Найти расстояние между двумя заданными
множествам точек на плоскости.
29. Многоугольник (не обязательно выпуклый) задан на плоскости координатами вершин в порядке обхода
его границы. Определить площадь многоугольника.
30. Выбрать три различные точки заданного на плоскости множества точек, составляющие треугольник
наибольшего периметра.
31. Из заданного на плоскости множества точек, заданных своими координатами, выбрать такие три точки, не
лежащие на одной прямой, которые составляют треугольник наименьшей площади.
32. Задано множество точек на плоскости. Выбрать из них четыре разные точки, которые являются
вершинами квадрата наименьшего периметра.
33. Из заданного множества точек на плоскости выбрать три разные точки А, В, С так, чтобы внутри
треугольника ABC содержалось максимальное количество точек этого множества.
РЕКУРСИЯ
34. В чем разница между "циклической" и "рекурсивной" программами. Какой элемент является
обязательным в рекурсивной программе, а в циклическом нет.
35. Напишите рекурсивную программу для сложения двух чисел как процесс, состоящий в последовательном
добавлении единиц. Подскажи; если х и у неотрицательные целые числа, то процесс сложения х и у есть х;
результат сложения х и у на единицу больше, чем результат сложения х и у-1.
36. Напишите рекурсивную программу для умножения двух чисел, выраженного через сложение. Подсказка:
произведение х на 0 равно 0; произведение х и у равно сумме х произведений х и у-1.
37.Напишите рекурсивную программу возведения в степень, т.е. х в степени у, выразив ее в терминах
операции умножения. Подсказка: см. подсказки к двум предыдущим упражнениям.
26
СОРТИРОВКА МАССИВОВ
38. Чтобы поменять местами значения, находящиеся в двух переменных А и В, необходимо, располагая ещё
одной, промежуточной переменной, выполнить три раза оператор присвоения.
а)
Покажите, как переставить значения трех переменных А, В и С (А в В, В в С и С в А). Сколько нужно
промежуточных переменных? Сколько операций нужно для осуществления перестановок?
б)
то же самое для четырех переменных;
в)
то же для М переменных.
40. Дан массив А длиной М, элементы которого отсортированы в порядке возрастания.
а)
Написать программу, которая выводит на экран эти значения в порядке убывания. (Подсказка: с какой
позиции ряда следует начать печатать?)
б)
Написать программу, которая бы упорядочивала этот массив по убыванию. (Подсказка: учесть, что
массив уже упорядочен по возрастанию.)
41.Дан некоторый массив А длиной М, который с начала до некоторого К упорядочен по возрастанию, а
начиная с К и до конца - убыванию. Найти число К.
42. Дан массив А, содержащий М элементов. Написать программу, которая отсортирует его по возрастанию,
отбросив при этом повторяющиеся значения. Например, если исходный массив содержит значения 3 7 2 3 7
3, то в результате обработки в нем должно остаться 2 3 7.
43. Написать программу, которая в массиве длиной М находит его медиану, т.е. такой элемент, который
больше любого из одной половины элементов и меньше любого из другой (если число элементов массива М
четно, то следует взять среднее значение из двух значений, обладающих этим свойством). Подсказка:
необходимо предварительно упорядочить массив по возрастанию.
44. Написать программу, которая определяет моду в массиве А длиной М. Мода это значение, встречающее
среди элементов чаще всего. Подсказке: необходимо предварительно упорядочить массив по возрастанию.
Можно ли решить предыдущую задачу, не производя сортировки массива?
45. Задан одномерный массив целых неупорядоченных чисел длиной n. Необходимо отсортировать числа в
порядке убывания их значений.
46. Задан одномерный массив целых неупорядоченных чисел длиной n. Необходимо отсортировать числа в
порядке возрастания их значений.
47. Решить задачу сортировки одномерного массива путем отыскании наименьшего числа ,затем второго но
величине и т.д. до тех пор, пока все числа не установятся в возрастающем порядке.
48. Даны одномерные массивы целых чисел A(N) и B(N). Упорядочить эти массивы в порядке возрастания их
значений и объединить их в массив С, Элементы которого также образуют упорядоченную совокупность
значений. Одинаковые значения в массив С заносятся один раз.
45. Упорядочить по убыванию элементы одномерного массива, стоящие на четных местах.
50. Упорядочить по возрастанию положительные элементы строк массива A(N, М).
51. Написать программу, которая бы упорядочивала числа в массиве Aдлиной М в зависимости от
введенного параметра. Упорядочить по возрастанию, если введенный параметр равен 1, и по убыванию, если
параметр равен -1. Постарайтесь найти предельно экономную программную реализацию, избежав прямого
дублирования программ для различных программ сортировки. (Подсказка; если а >в,.то-1*а<-1*в)
52. Известно, что первые N элементов одномерного массиве А упорядочены по возрастанию. Написать
программу, которая осуществляет вставку нового числа X в надлежащую позицию массива. Например, если
А содержит числа 2 7 11 12 13 и X равно 10, то это новое значение должно быть помещено в третью позицию,
при этом все следующие за ним числа сдвигаются. Предполагается, что размер массива больше N.
53. Известно, что первые N элементов одномерного массива А упорядочены по возрастанию. Написать
программу, которая осуществляет удаление числа, находящегося в K-ой позиций массива. Например, если А
содержит числа 2 7 11 12 13 и К равно 3, то это значение 11 находится в 3-ей позиции, должно быть удалено.
При этом все следующие за ним числа сдвигаются влево, и массив принимает вид 2 7 12 13.
54 Написать программу, предназначенную для удаления из одномерного массива А длиной N
повторяющихся значений. Всякое повторно встречающееся число должно быть удалено; при этом все
стоящие за ним элементы массива сдвигаются в сторону начальных позиции, а значение N соответственно
корректируется. Например, если массив А содержат 3 7 3 7 2 (и N=5), то после обработки он будет содержать
3 7 2 (и N=3). Порядок следования чисел в массиве может не совпадать с исходным. (Подсказка: сначала
упорядочить массив, а потом осуществить удаление.)
27
КОМБИНАТОРИКА И ЛОГИКА
55. Имеется n городов. Некоторые из них соединены дорогами известной длины. Вся система дорог задана
квадратной матрицей порядка n, элемент аij которой равен некоторому отрицательному числу, если город i не
соединен напрямую с городом j и равен длине дороги в противном случае (i, j=1,…,n).
А)для i-го города найти кратчайшие маршруты в остальные города.
б) в предположение, что каждый город соединен напрямую дорогой с каждым найти кратчайший маршрут,
начинающийся в 4-ом городе и проходящий через все остальные города.
56. Найти такую расстановку пяти ферзей на шахматной доске, при которой каждое поле будет находиться
под ударом одного из них.
57.Найти такую расстановку двенадцати коней на шахматной доске, при которой каждое поле будет
находиться под ударом одного из них.
58.Найти такую расстановку восьми слонов на шахматной доске, при которой каждое поле будет находиться
под ударом одного из них.
59.В данной последовательности действительных чисел а1, ... ,аn выбрать возрастающую последовательность
наибольшей длины.
60. Имеется n предметов, веса которых равны al,... ,аn. Разделить эти предметы на две группы так, чтобы
общие веса двух групп были максимально близки.
61. Получить последовательность al, ..., аn цифр 0, 1, 2, в которой нет смежных одинаковых участков
(например, последовательность 2, 0, 1, 1,... не годится, так как рядом расположены два одинаковых члена 1;
последовательность 2,1,0,1,2,1,0,1,... не годится, так как рядом расположены два одинаковых участка 2, 1,0,1
в т. д.).
62. Имеется m различных предметов, известны вес каждого предмета и его стоимость. Определить, какие
предметы надо положить в рюкзак, чтобы общий вес не превышал заданной границы, а общая стоимость
была максимальна. Решить эту задачу для m предметов, веса которых в кг равны p1, … ,рm. стоимости cl ,...,
сm. Вес рюкзака не должен превышать 50 кг.
63. Задана матрица, состоящая из нулей и единиц. Найти все такие не избыточные сочетания номеров
столбцов этой матрицы, логическая сумма которых в каждой строке матрицы даст единицу.
ФИЗИКА
64. Резервуар наполнен 75 л одного раствора, содержащего 3 кг растворенного сахара, Приток воды • 4 л
/мин, расход смеси из сосуда 2л/мин. Концентрация поддерживается равномерным путем перемешивания.
Найти количество сахара, которое будет содержаться в резервуаре через 25 мин,
65. Фокусирующее действие однородного гравитационного поля. Составить npoграмму построения
траекторий N тел, брошенных с одинаковыми по модулю скоростями (задаваемыми пользователем), но в
малом угловом интервале (задаваемым также пользователем), т.е. с одинаковыми по модулю, но несколько
различающимися по углу а с горизонтом начальными скоростями V0. Выяснить, в чем особенность этих
траекторий.
ФИНАНСОВО - ЭКОНОМИЧЕСКИЕ РАСЧЕТЫ
66. Клиент банка внес в него вклад S0. До какой суммы S он вырастет через N лет, если процент годовых
начислений равен Р.
67. Через сколько лет начальный вклад S0 увеличится до суммы S, если процент годовых начислений равен
P, а ежемесячная инфляция (считаем её постоянной)равна Q.
68. Какой процент годовых начислений р должен обеспечить банк, чтобы первоначальный вклад S0
увеличился вдвое за время n при постоянной ежемесячной инфляции, равной Q.
69. Kлиент банка решил ежегодно вносить вклад S0 в течении Nлет. Сколько денег он сможет получить, если
процент годовых начислений равен Р, а ежемесячная инфляция является постоянной и равна Q.
70. Какую сумму S0 должен ежегодно вносить клиент банка чтобы через N лет накопить сумму s при
проценте годовых Р. А) в условиях отсутствии инфляции, б) при ежемесячной постоянной инфляции, равной
Р.
71. Определить день недели по дате числа.
72. Определить количество дней N, прошедших между двумя датами.
28
Download