Series 8 - 11
Series8 - выводим четные числа и их количество из данного набора целых чисел.
Series9 - выводим нечетные числа из данного набора и их количество.
Series10 - определить наличие положительных чисел из данного набора.
Series11 - выводим числа меньшие данного числа.
Series8. Дано целое число N и набор из N целых чисел. Вывести в том же порядке все четные числа из данного набора и количество K таких чисел.
Последовательность действий:
1)Вводим количество чисел N.
2)Сначала количество четных чисел ставим K = 0.
3)Потом заходим в цикл (от 1 до N):
3.1)Вводим число а;
3.2)Если число а четное (условие odd(a+1) истинно), то при K=0 выводим сообщение "Четные числа";
3.3)Выводим все четные числа и увеличиваем их количество на 1 с помощью inc(K);
4)Вывводим количество четных чисел.
Код Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 | var
a, i, N, K: integer;
begin
write('N = ');
readln(N);
K := 0; //начальное количество четных чисел
writeln('Введите ', N, ' целых чисел:');
for i := 1 to N do begin
read(a);
if odd(a + 1) then begin //число a четное
if K = 0 then writeln('Четные числа:');
write(a, ' ');
inc(K) //увеличиваем количество четных чисел на 1
end
end;
writeln;
writeln('количество четных чисел = ', K)
end. |
|
Series9. Дано целое число N и набор из N целых чисел. Вывести в том же порядке номера всех нечетных чисел из данного набора и количество K таких чисел.
Последовательность действий почти полностью повторяет действия из предыдущей задачи, только вместо проверки чисел на четность надо проверять на нечетность (условие odd(a) истинно), и выводить надо не сами числа, а их номера i в последовательности:
Код Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 | var
a, i, N, K: integer;
begin
write('N = ');
readln(N);
K := 0; //начальное количество нечетных чисел
writeln('Введите ', N, ' целых чисел:');
for i := 1 to N do begin
read(a);
if odd(a) then begin //число a нечетное
if K = 0 then writeln('Нечетные числа:');
write(a, ' ');
inc(K) //увеличиваем количество нечетных чисел на 1
end
end;
writeln;
writeln('количество нечетных чисел = ', K)
end. |
|
Series10. Дано целое число N и набор из N целых чисел. Если в наборе имеются положительные числа, то вывести True; в противном случае вывести False.
Все комментарии в коде:
Код Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 | var
a, i, N: integer;
bln: boolean;{ bln = True, если существуют положительные числа,
и bln = False в противном случае }
begin
write('N = ');
readln(N);
bln := false; //положительных чисел пока что нет
writeln('Вводим ', N, ' случайных целых чисел:');
randomize;
for i := 1 to N do begin
a := random(200) - 100; //случайное число [-100, 99]
write(a, ' ');
if (a > 0)and(bln = false) then bln := true
{ Замечание: условие (a > 0)and(bln = false) означает, что число
а положительное (a>0) и перед этим положительных чисел ещё не
было (bln=false). Поскольку эти два условия должны выполнятся
одновременно, то объединяем их оператором and (логическое "и") }
end;
writeln;
writeln(bln)
end. |
|
Series11. Даны целые числа K, N и набор из N целых чисел. Если в наборе имеются числа, меньшие K, то вывести True; в противном случае вывести False.
Код Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 | var
a, i, N, K: integer;
bln: boolean;{ bln = True, если неравенство a < K выполняется,
и bln = False в противном случае }
begin
write('N = ');
readln(N);
write('K = ');
readln(K);
bln := false;
writeln('Выводим ', N, ' случайных целых чисел:');
randomize;
for i := 1 to N do begin
a := -100 + random(200); //случайное число [-100, 99]
write(a, ' ');
if bln = false then bln := (a < K)
end;
writeln;
writeln(bln)
end. |
|