Определить количество ковриков, которые покроют весь пол - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Незнайка решил покрыть пол в своей комнате,имеющий прямоугольную форму,квадратными ковриками по схеме. В магазине имеются коврики различных размеров. Требуется определить количество ковриков,которые покроют весь пол полностью.(размеры комнаты вводятся с клавиатуры).

Решение задачи: «Определить количество ковриков, которые покроют весь пол»

textual
Листинг программы
var s:string;
    a,b,a1,b1:longint;
    k:integer;
begin
repeat
writeln('введите длину');
readln(s);
val(s,a,k);
if (k<>0)or(a<=0) then writeln('Некорректные данные,повторите');
until (k=0)and(a>0);
repeat
writeln('введите ширину');
readln(s);
val(s,b,k);
if (k<>0)or(b<=0) then writeln('Некорректные данные,повторите');
until (k=0)and(b>0);
a1:=a;
b1:=b;
writeln('метод незнайки');
k:=1;
while a<>b do
 begin
  if a>b then a:=a-b else b:=b-a;
  k:=k+1;
 end;
writeln('количество ковров=',k);
writeln('метод знайки');
k:=0;
while a1*b1>0 do
 begin
  if a1>b1 then
    begin
     k:=k+a1 div b1;
     a1:=a1 mod b1;
    end
  else
   begin
    k:=k+b1 div a1;
    b1:=b1 mod a1
   end;
 end;
writeln('количество ковров=',k);
readln;
end.

Объяснение кода листинга программы

  1. Переменная s используется для хранения введенных пользователем данных. Тип данных - строка.
  2. Переменные a и b используются для хранения длины и ширины ковра соответственно. Тип данных - длинное целое число.
  3. Переменная k используется для проверки корректности введенных данных. Тип данных - целое число.
  4. Пользователю предлагается ввести длину ковра.
  5. Если введенные данные некорректны (не является числом или длина меньше или равна нулю), программа выводит сообщение об ошибке и просит повторить ввод.
  6. Пользователю предлагается ввести ширину ковра.
  7. Если введенные данные некорректны (не является числом или ширина меньше или равна нулю), программа выводит сообщение об ошибке и просит повторить ввод.
  8. Переменные a1 и b1 инициализируются значениями переменных a и b соответственно.
  9. Метод незнайки используется для определения количества ковров методом проб и ошибок.
  10. Если длина ковра больше ширины, то длина уменьшается на ширину, иначе ширина уменьшается на длину.
  11. Если длина ковра равна нулю, то цикл завершается.
  12. Переменная k увеличивается на единицу после каждой итерации цикла.
  13. Метод знайки используется для определения количества ковров методом деления с остатком.
  14. Если значение переменной a1 больше значения переменной b1, то остаток от деления a1 на b1 добавляется к переменной k. Затем значение переменной a1 обновляется на остаток от деления на b1.
  15. Если значение переменной a1 меньше или равно значению переменной b1, то остаток от деления b1 на a1 добавляется к переменной k. Затем значение переменной b1 обновляется на остаток от деления на a1.
  16. Цикл продолжается, пока значение переменной a1 не станет равным нулю.
  17. Выводится количество ковров, определенное методом знайки.
  18. Программа ожидает ввода пользователя, чтобы он мог увидеть результат.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.5 из 5
Похожие ответы