Помогите пожалуйста решить задачу через РЕКУРСИЮ в Pascal. У первоклассника Пети m...

0 голосов
137 просмотров

Помогите пожалуйста решить задачу через РЕКУРСИЮ в Pascal.

У первоклассника Пети m рублей. Мороженое стоит k рублей. Петя решил наесться досыта мороженого, для этого он покупал по одному мороженому и съедал ее до тех пор, пока ему хватало денег. Как Пете узнать, сколько денег останется у него в конце концов? Учтите, что Петя делить еще не умеет, а умеет только вычитать и складывать. Сколько мороженых он может съесть?


Информатика (67 баллов) | 137 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Var m,k,r:integer;
procedure buy(var m,k,r:integer);
begin;
if k<=m then<br>begin;
m:=m-k;
inc(r);
buy(m,k,r);
end;
end;

begin;
write('Введите сколько у Пети рублей:');
readln(m);
write('Введите стоимость мороженого:');
readln(k);
buy(m,k,r);
write('Всего:',r);
end.

(38.6k баллов)
0 голосов
var m,k,r:integer;
Function buy(m,k : integer) : Integer;
begin;
  If m>k then Buy:=1+buy(m-k,k) else Buy:=0;
end;

begin;
write('Введите сколько у Пети рублей:');
readln(m);
write('Введите стоимость мороженого:');
readln(k);
write('Всего:',buy(m,k));
end.

(5.1k баллов)