Программирование
Обработка потока данных
Обработка потока данных
Найди ошибку!
Найди ошибку!
Обработка потока данных
Обработка потока данных
Найди ошибку!
Задачи
425.00K
Категория: ПрограммированиеПрограммирование

Обработка массивов

1. Программирование

Обработка массивов
1

2. Обработка потока данных

2
Обработка потока данных
Задача. С клавиатуры вводятся числа, ввод завершается
числом 0. Определить, сколько было введено
положительных чисел.
увеличивать
? Когда
счётчик?
1) нужен счётчик
2) счётчик увеличивается если число > 0
3) нужен цикл
? Какой цикл?
4) это цикл с условием (число шагов неизвестно)
счётчик = 0
пока не введён 0:
если введено число > 0 то
счётчик:= счётчик + 1

3. Обработка потока данных

3
Обработка потока данных
var x, count: integer;
count: = 0;
откуда взять x?
read( x );
while x <> 0 do begin
if x > 0 then
count:= count + 1;
read( x );
? Что плохо?
end;
writeln( count );

4. Найди ошибку!

4
Найди ошибку!
var x, count: integer;
count: = 0;
read( x );
while x <> 0 do begin
if x > 0 then
count:= count + 1;
end;
read( x );
writeln( count );

5. Найди ошибку!

5
Найди ошибку!
var x, count: integer;
read( x= 0;
);
count:
while x = 0 do begin
if x ><>
0 then
count:= count + 1;
read( x );
end;
writeln( count );

6. Обработка потока данных

6
Обработка потока данных
Задача. С клавиатуры вводятся числа, ввод завершается
числом 0. Найти сумму введённых чисел,
оканчивающихся на цифру "5".
1) нужна переменная для суммы
2) число добавляется к сумме, если оно
заканчивается на "5"
3) нужен цикл с условием
сумма: = 0
? Как это записать?
пока не введён 0:
если число оканчивается на "5" то
сумма:= сумма + число
if x mod 10 = 5 then

7. Обработка потока данных

7
Обработка потока данных
Задача. С клавиатуры вводятся числа, ввод завершается
числом 0. Найти сумму введённых чисел,
оканчивающихся на цифру "5".
var x, sum: integer;
sum: = 0;
Чего не хватает?
?
read( x );
while x <> 0 do begin
if x mod 10 = 5 then
sum:= sum + x;
read( x )
end;
writeln( sum );

8. Найди ошибку!

8
Найди ошибку!
var x, sum: integer;
sum: = 0;
while
read( x <>
); 0 do begin
if x mod 10 = 5 then
sum:= sum + x;
read( x )
end;
writeln( sum );

9. Задачи

9
Задачи
«A»: На вход программы поступает неизвестное
количество целых чисел, ввод заканчивается нулём.
Определить, сколько получено чисел, которые
делятся на 3.
«B»: На вход программы поступает неизвестное
количество целых чисел, ввод заканчивается нулём.
Определить, сколько получено двузначных чисел,
которые заканчиваются на 3.
English     Русский Правила