BEGIN ClrScr;
Write('В КОМАНДУ ЗАЧИСЛЯЮТСЯ УЧЕНИКИ, '); WriteLn('РОСТ КОТОРЫХ ПРЕВЫШАЕТ 170 СМ.'); WriteLn; Write('Сколько всего учеников? '); ReadLn(NPupil); WriteLn('Введите фамилии и рост учеников:'); For i:= 1 to NPupil do begin Write(i, '. Фамилия - '); ReadLn(SurName[i]); Write(' Рост - '); ReadLn(Height[i]); End; WriteLn; K:=0; { Составление списка команды } For i:= 1 to NPupil do If Height[i]>170 then begin K:=K+1; Cand[K]:= SurName[i] end; If K=0 then WriteLn('В КЛАССЕ НЕТ КАНДИДАТОВ В КОМАНДУ.') Else begin WriteLn('КАНДИДАТЫ В БАСКЕТБОЛЬНУЮ КОМАНДУ:'); For i:= 1 to K do WriteLn(i, '. ', Cand[i]); End; ReadLn END. Пример 4. Для заданного x вычислить Здесь n! = 1. 2. 3.... n (читается как "n-факториал"). Тест
Демонстрация Начало формы Конец формы Школьный АЯ алг Сумма Ряда (арг вещ х, арг цел n, рез вещ S) нач цел i, вещ P | P - очередное слагаемое S:= 1; P:= 1 нц для i от 1 до n P:= - P*x /i | получение очередного слагаемого S:= S + P Кц Кон
Пример 5. Дан массив X(N). Получить новый массив Y(N) такой, что в нем сначала идут положительные числа, затем нулевые, и затем отрицательные из X. Тест
Демонстрация Начало формы Конец формы Школьный АЯ алг Новый Порядок (арг цел N, арг вещ таб Х[1:N], рез вещ таб Y[1:N]) нач цел i, k | k - индекс массива Y k:= 0 нц для i от 1 до N | Занесение в Y положительных чисел из X если X[i] > 0 то k:= k+1; Y[k]:= X[i] Все Кц нц для i от 1 до N | Занесение в Y чисел, равных нулю, из X если X[i] = 0 то k:= k+1; Y[k]:= X[i] Все Кц нц для i от 1 до N | Занесение в Y отрицательных чисел из X если X[i] < 0 то k:= k+1; Y[k]:= X[i] Все Кц Кон
Задачи для самостоятельного решения 2.1. [Pascal | Подсчитайте число и сумму положительных, число и произведение отрицательных элементов заданного массива A(N). 2.37. [Pascal | C | Basic] По данным о расписании движения пригородных поездов определите значение наибольшего интервала времени между отправлениями поездов. 2.38. [Pascal | C | Basic] Учитель объявил результаты контрольной работы. Определите пpоцентное содеpжание выставленных им "пятерок", "четверок", "троек" и "двоек". 2.39. [Pascal | C | Basic] Фунт стерлингов, денежная единица Великобритании, до 1971 г. равнялся 20 шиллингам или 240 пенсам. С проходящего корабля в порту Ливерпуля сошли N путешественников, каждый из которых имел по одной десятифунтовой купюре. Они купили сувениры на сумму p1, p2,..., pn, соответственно. Сколько фунтов, шиллингов и пенсов сдачи получил каждый из путешественников? 2.40. [Pascal | C | Basic] О каждом учащемся класса известны его пол, год рождения, рост и вес. Определите, сколько в классе мальчиков и сколько девочек. Найдите средний возраст мальчиков и средний возраст девочек. Определите, верно ли, что самый высокий мальчик весит больше всех в классе, а самая маленькая девочка является самой юной среди девочек.
|