GAECHKA
Твоя помощница в решении задач

Если первое число больше второго то первое число поделить на второе иначе второе поделить на первое .

Даны два числа заданных с клавиатуры и не равных 0. Если первое число больше второго то первое число поделить на второе иначе второе поделить на первое .
0
вопрос задан

Источник


19 ответов
Решение
var a,b,c:real;
begin
repeat
writeln('Введите 2 числа, не равные 0');
readln(a,b);
until(a0)and(b0);
if a>b then c:=a/b
else c:=b/a;
write('c=',c:0:2);
end.
Решение
King152_boec, по .NET-вский:
begin
  var (a, b) := (readreal('Введите число "а" не равное нулю: '), readreal('Введите число "b" не равное нулю: '));
  if a > b
    then writeln($'a/b = {a / b:0:2}')
  else writeln($'b/a = {b / a:0:2}');
end.
А можно как то без цикла ?
Нет, нам же нужно проверить что a,b<>0.
Ну если уверены в себе и в преподавателе, то пишите без проверки.
Ну или просто можешь помочь вот в эту программу вставить что нибудь кроме цикла чтобы когда я вводил число а или b не равное о то у меня бы просто писалось что введите число не равное 0

program test;
var
a,b,c: real;
begin
writeln('введите два числа, не рвных 0');
readln(a,b);
if (a > b) then c := a / b;
if (b > a) then c := a / b;
write('c=',c:0:2);
end.
А напиши сам. Должен же ты хотя бы свои прихоти исполнять.
King152_boec, без цикла нельзя сделать то,что вы хотите!
а чем вам цикл-то не угодил?

Добавлено через 2 минуты
program test;
var
a,b,c: real;
begin
writeln('введите два числа, не равных 0');
readln(a,b);
if (a > b) then c := a / b;
if (b > a) then c := a / b;
write('c=',c:0:2);
end.
а кто этот код написал??)
Код написал я . Цикл меня не устраивает потому что мы его ещё не проходили
King152_boec, у вас в коде ошибка
А где ?
King152_boec, ну вы запустите свою программу,поиграйте со значениями, и поймете.
Вроде правильно
King152_boec, точно?
Запустите программу со значениями
a = 5
b =7
а потом еще раз, но только со значениями
a = 7
b = 5
В первом случае у меня получилось 0,71
А во втором 1,40
King152_boec, а должно было получиться 1,40,в обоих случаях.
т.к. по условию задачи,большее число делится на маленькое

Добавлено через 36 секунд
if (b > a) then c := a / b;
вот тут просто поменяйте местами "а" и "b"
Ну по условием задачи ещё и сказано если первое число больше второго то первое число поделить на второе ,иначе второе поделить на первое
King152_boec, а я что сказал??
ну там же ещё написано иначе второе поделить на первое
King152_boec ................