Регистрация
Войти
Стать экспертом Правила
Информатика

Помогите срочно решить следующую задачу(оформить с пояснениями).
Задача:
определите при каком наименьшем значении b в результате выполнения следующего алгоритма будет напечатано число 100
var a,b,t,k:integer;
function F(x:integer):integer;
begin
if x mod 2 = 0 then
F: = 1;
else
F: = 0;
end;
BEGIN
a: = 100;
readln(b);
k: = 0;
for t: = a to b do
begin
k: = k = F(t);
end;
write(k);
END.

ОТВЕТЫ
Наверное не k:=k=F(t); а k:=k+F(t);
тогда ответ: 298

---------------------------
Процедура F(x) дает 1, если х четное или 0, если х нечетное.
Далее программа подсчитывает сумму F(x)  (т.е. проще говоря количество четных чисел) от 100 до b.
Т.к. 100 само является четным числом, остается еще 99 четных чисел. 
Т.к. четные числа идут через один, то потребуется в два раза больше чисел:
99*2=198
100+198=298
т.е. 298 является тем числом, по достижении которого сумма F(x) станет равна 100.
7
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам