Вывести целую и дробную часть вещественного числа - PascalABC.NET

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

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

Если целая и дробная часть числа равны - вывести на экран True Нет - False Приведенный ниже код не работает. Неверно считает дробную часть (вернее не так, как нужно). Решить нужно без строк, ифов и тп.
Листинг программы
  1. var c, b: real;
  2. a :integer;
  3. begin
  4. readln(c);
  5. a := integer(trunc(c));
  6. b := frac(c);
  7. writeln(a=b);
  8. end.

Решение задачи: «Вывести целую и дробную часть вещественного числа»

textual
Листинг программы
  1. var a, b, i, n: integer;
  2. //i - Г‘Г‘‡ГђµГ‘‚Г‘‡ГђВёГђВє ГђВІГ‘‚ГђВѕГ‘€ГђВѕГђВіГђВѕ Г‘†ГђВёГђВєГђ»Гђ° n - ГђВєГђВѕГђ»ГђВІГђВѕ Г‘†ГђВёГ‘„Г‘€ ГђВІ Г‘†ГђµГђВґГђВѕГђВ№ Г‘‡Гђ°Г‘Г‘‚ГђВё
  3. c, b2, a2 : real;
  4. begin
  5.   readln(c);
  6.   a := trunc(c); //ГђВїГђВѕГђ»Г‘ƒГ‘‡ГђВёГђ»ГђВё Г‘†ГђµГђ»Г‘ƒГ‘Ž Г‘‡Гђ°Г‘Г‘‚Г‘Œ
  7.   a2 := trunc(c); //ГђВІГ‘‚ГђВѕГ‘€ГђВѕГђВ№ Г‘€Гђ°Гђ· ГђВїГђВѕГђ»Г‘ƒГ‘‡ГђВёГђ»ГђВё Г‘†ГђµГђ»Г‘ƒГ‘Ž Г‘‡Гђ°Г‘Г‘‚Г‘Œ, Г‘‡ГђµГ‘€ГђµГђ· ГђВЅГђµГђµ Г‘ƒГђ·ГђВЅГђ°ГђµГђВј,ГђВЅГђ° Г‘ГђВєГђВѕГђ»Г‘ŒГђВєГђВѕ ГђВїГђВѕГ‘‚ГђВѕГђВј Гђ±Г‘ƒГђВґГђµГђВј Г‘ƒГђВјГђВЅГђВѕГђ¶Гђ°Г‘‚Г‘Œ
  8.   while trunc(a2) > 0 do
  9.   begin
  10.     a2 := a2/10;
  11.     Inc(n);
  12.   end;
  13.   //ГђВЈГђ·ГђВЅГђ°Гђ»ГђВё, Г‘ГђВєГђВѕГђ»Г‘ŒГђВєГђВѕ Г‘†ГђВёГ‘„Г‘€ ГђВІ Г‘†ГђµГђ»ГђВѕГђВ№ Г‘‡Гђ°Г‘Г‘‚ГђВё, Г‘‚ГђµГђВїГђµГ‘€Г‘Œ ГђВЅГ‘ƒГђ¶ГђВЅГђВѕ ГђВїГђВѕГђ»Г‘ƒГ‘‡ГђВёГ‘‚Г‘Œ ГђВЅГђВѕГ‘€ГђВјГђ°Гђ»Г‘ŒГђВЅГђВѕГђµ Г‘‡ГђВёГ‘Гђ»ГђВѕ ГђВёГђ· ГђВґГ‘€ГђВѕГђ±ГђВЅГђВѕГђВ№
  14.   b2 := frac(c);
  15.   while i <> n do
  16.   begin
  17.     b2 := b2 * 10;
  18.     Inc(i);
  19.   end;
  20.   b2 := round (b2);
  21.   writeln(a=b2);
  22. end.

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

  1. Объявлены переменные a, b, i, n типа integer и переменные c, b2, a2 типа real.
  2. С помощью функции readln() вводится значение переменной c.
  3. Переменная a инициализируется целой частью числа c с помощью функции trunc().
  4. Переменная a2 инициализируется дробной частью числа c с помощью функции trunc().
  5. В цикле while происходит деление переменной a2 на 10 и увеличение переменной n до тех пор, пока a2 больше 0.
  6. Переменная b2 инициализируется как произведение переменной a2 на 10 и увеличенное значение переменной i.
  7. В цикле while происходит умножение переменной b2 на 10 и увеличение переменной i до тех пор, пока i не станет равным n.
  8. Переменная b2 приводится к ближайшему целому значению с помощью функции round().
  9. Выводится сообщение, содержащее значения переменных a и b2.

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


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

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

15   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы