Similar presentations:
Программирование, счетный цикл
1.
Программирование,счетный
цикл
2.
Способы записи алгоритмовс помощью блок-схем
начало
конец
Блок ввода
информации
readln (a,b);
a,b
Простое действие,
операция
присваивания
Блок вывода
информации
writeln (a,b);
s=a*b/2
вывод max
Блок
проверки
условия
да
нет
a<>0
if (a<>b) then <действие1>
else < действие 2>;
i=a, b
Тело цикла,
повторяющиеся
операторы
for i:=a to b do
begin
Тело цикла,
повторяющиеся
операторы
end;
3.
Условия поиска элементов последовательности1.
2.
3.
4.
5.
Четные элементы: a mod 2 = 0 , нечетные: a mod 2 = 1 ;
Двузначные числа: (a > 9 ) and ( a < 100 ) ;
Число кратно 5: a mod 5 = 0 ;
Число оканчивается на 3: a mod 10 = 3 ;
Число оканчивается на 2 и кратно 4: (a mod 10 = 2) and (a mod 4 = 0)
Поиск количества или суммы элементов, отвечающих
условию; минимального или максимального элементов.
1. В последовательности из n элементов найти количество элементов, кратных 3.
Для этого заводим целую переменную k (k:=0 до входа в цикл), и в цикле
увеличиваем ее значение на 1, если очередное число кратно 3.
2. В последовательности из n элементов найти сумму элементов, оканчивающихся
на 5. Для этого заводим целую переменную sum (sum:=0 до входа в цикл), и в
цикле прибавляем к ней очередное число, если оно оканчивается на 5.
3. Для поиска максимального элемента заводим переменную max (max:=
минимальному элементу последовательности до входа в цикл), в цикле
сравниваем значение max с очередным элементом. Если он больше max, то
max:=a, иначе остается старое значение.
4.
Программа поиска количества элементовпоследовательности, удовлетворяющих условию
Напишите программу, которая в последовательности натуральных чисел определяет количество
чисел, кратных 4. Программа получает на вход количество чисел в последовательности, а затем
сами числа. В последовательности всегда имеется число, кратное 4. Количество чисел не
превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно
число — количество чисел, кратных 4.
Для этого заводим целую переменную k (k:=0 до входа в цикл), и в цикле увеличиваем ее
значение на 1, если очередное число кратно 4.
начало
k:=0
n
i:=1,n
a
k
конец
k:=k+1
Таблица трассировки.
Количество элементов n=3
i
a
k
n
До входа в
0
3
цикл.
1
5
0
2
8
1
3
4
2
цикл
a mod 4=0
var n, i, k, a: integer;
begin
k:=0;
readln(n);
for i:=1 to n do
begin
readln(a);
if (a mod 4 = 0) then
k:=k+1;
end;
writeln(k);
end.
5.
Программа поиска суммы элементовпоследовательности, удовлетворяющих условию
Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел,
кратных 6. Программа получает на вход количество чисел в последовательности, а затем сами
числа. В последовательности всегда имеется число, кратное 6. Количество чисел не превышает 100.
Введённые числа не превышают 300. Программа должна вывести одно число — сумму чисел,
кратных 6.
Для этого заводим целую переменную sum (sum:=0 до входа в цикл), и в цикле прибавляем к
sum очередное введенное число, если оно кратно 6.
начало
sum:=0
n
i:=1,n
a
sum
конец
sum:=sum+a
Таблица трассировки.
Количество элементов n=3
i
a
sum
n
До входа в
0
3
цикл.
1
5
0
2
12
12
3
6
18
цикл
a mod 6=0
var n, i, k, a: integer;
begin
sum:=0;
readln(n);
for i:=1 to n do
begin
readln(a);
if (a mod 6 = 0) then
sum:=sum+a;
end;
writeln(sum);
end.
6.
Программа поиска максимального элементапоследовательности, удовлетворяющего условию
Напишите программу, которая в последовательности натуральных чисел определяет максимальное
число, кратное 5. Программа получает на вход количество чисел в последовательности, а затем сами
числа. В последовательности всегда имеется число, кратное 5. Количество чисел не превышает 1000.
Введённые числа не превышают 30 000. Программа должна вывести одно число — максимальное
число, кратное 5.
Для этого заводим целую переменную max (max:=0 до входа в цикл), в цикле проверяем
очередное введенное число, если оно кратно 5 и больше max, записываем его в переменную max.
начало
max:=0
n
a
max
конец
(a mod 5=0)
and (a>max)
max:=a
Таблица трассировки.
Количество элементов n=3
i
a
max
n
До входа в
0
3
цикл.
1
5
5
2
15
15
3
6
15
цикл
i:=1,n
var i, n, a, max: integer;
begin
max:=0;
readln(n);
for i:=1 to n do
begin
readln(a);
if (a mod 5 = 0) and
(a>max) then
max:=a;
end;
writeln(max);
End.
Если надо найти
минимальное число в
последовательности, то в
min надо положить верхнюю
границу интервала, т.е.
min:=30000 и изменить
условие (a<min)