Предмет: Информатика,
автор: tsmirnova7
ПОМОГИТЕ СРОЧНО, ПОЖАЛУЙСТА
Помогите , пожалуйста, нужно составить трасеровочную таблицу , отладить эту программу . Программа работает. Выдаёт правильный ответ. Но не проходит по тренировочной таблице .
program test;
var n, k, m: integer ;
begin
repeat ;
write ('Введите натуральное число n );
readln (n);
until n>0;
m:=n;
k:=10;
while m div 10<>0 do
begin
k:=k*10;
m:=m div 10;
end;
m:=(2*k+n)*10+2;
writeln ('Число с двойками=,m');
end.
Помогите , пожалуйста, срочно!
Возможно что-то не так(
Ответы
Автор ответа:
0
Вот вариант программы с трассировкой
program test;
var
n,k,m:integer;
begin
repeat
Writeln('*** очередной проход по циклу REPEAT');
Write('Введите натуральное число n: ');
Readln(n);
Writeln('*** введено ',n)
until n>0;
Writeln('*** вышли из REPEAT по условию ',n,' > 0 = ',n>0);
m:=n;
k:=10;
Writeln('*** m=',m,', k=',k);
Writeln ('*** проверка входа в цикл WHILE с условием ',m,' div 10<>0 = ',
m div 10<>0);
while m div 10<>0 do begin
Writeln ('*** проход по циклу WHILE с условием ',m,' div 10<>0 = ',
m div 10<>0);
k:=k*10;
m:=m div 10;
Writeln('*** m=',m,', k=',k);
end;
Writeln('*** Цикл WHILE завершен');
m:=(2*k+n)*10+2;
Writeln('Число с двойками = ',m);
end.
program test;
var
n,k,m:integer;
begin
repeat
Writeln('*** очередной проход по циклу REPEAT');
Write('Введите натуральное число n: ');
Readln(n);
Writeln('*** введено ',n)
until n>0;
Writeln('*** вышли из REPEAT по условию ',n,' > 0 = ',n>0);
m:=n;
k:=10;
Writeln('*** m=',m,', k=',k);
Writeln ('*** проверка входа в цикл WHILE с условием ',m,' div 10<>0 = ',
m div 10<>0);
while m div 10<>0 do begin
Writeln ('*** проход по циклу WHILE с условием ',m,' div 10<>0 = ',
m div 10<>0);
k:=k*10;
m:=m div 10;
Writeln('*** m=',m,', k=',k);
end;
Writeln('*** Цикл WHILE завершен');
m:=(2*k+n)*10+2;
Writeln('Число с двойками = ',m);
end.
Приложения:
Похожие вопросы
Предмет: Математика,
автор: Аноним
Предмет: История,
автор: bulavinovavi7
Предмет: Қазақ тiлi,
автор: ayalymarmy
Предмет: Алгебра,
автор: Алинка31