Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.03.2018, 20:52   #1
Genzal
Пользователь
 
Регистрация: 23.12.2017
Сообщений: 22
По умолчанию Модуль. Вывод.

Программа полностью рабочая, подскажите в чём допущена ошибка, что она выводит так странно значения:
Код:
uses crt, Fraction; {Connect the module containing the calculation}

procedure InputNumbers(var x, k: real);{The procedure for entering two numbers}
begin
  repeat{The number must be positive}
    write('Enter the first number =');
    readln(x);
    if (x < 0) then
      writeln('Error! Please try again!');
  until (x >= 0);
  repeat{The number must be positive}
    write('Enter the second number =');
    readln(k);
    if (k < 0) then
      writeln('Error! Please try again!');
  until (k >= 0);
  writeln;
end;


procedure OutputNumbers(S, y: real);{Display procedure}
begin
  writeln('Arithmetic mean of two numbers S=', S);
  writeln('The fractional part of the number S=', y);
end;

{Main program with procedure call}
var
  s, k, x, y: real;
  g: integer;

begin
  repeat
    clrscr;
    writeln;
    writeln('The program is designed to find the fractional part of the mean');
    writeln('arithmetic two given positive real numbers.');
    writeln;
    InputNumbers(x, k);
    y := shot(x, k, s);
    OutputNumbers(S, y);
    writeln;
    writeln('To exit the program, enter the number 0,');
    writeln('if you want to restart a positive integer');
    repeat
      write('Your choice: ');
      readln(g);
      if (g < 0) then
        writeln('Error! Please try again!');
    until (g >= 0);
  until g = 0;
end.
Изображения
Тип файла: png 2018-03-27_20-51-38.png (6.3 Кб, 84 просмотров)

Последний раз редактировалось Genzal; 27.03.2018 в 23:10.
Genzal вне форума Ответить с цитированием
Старый 27.03.2018, 22:10   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Код:
procedure OutputNumbers(S, y: real);{Display procedure}
begin
  writeln('Arithmetic mean of two numbers S=', S:1:5);
  writeln('The fractional part of the number S=', y:1:5);
end;
только это не ошибка. Паскаль выводит вещественные числа в экспоненциальной форме.
читайте про форматы вывода: http://physic.kemsu.ru/pub/library/l...oder/3_1_2.htm

Последний раз редактировалось Serge_Bliznykov; 27.03.2018 в 22:13.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.03.2018, 23:10   #3
Genzal
Пользователь
 
Регистрация: 23.12.2017
Сообщений: 22
По умолчанию

Понял
Genzal вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В модуль поместить функции сортировки символьных и числовых массивов. Подключить созданный модуль и применить эти функции к вводим Tuns Помощь студентам 6 27.05.2014 15:07
Создать собственный модуль и программу, использующую этот модуль. Oraner Паскаль, Turbo Pascal, PascalABC.NET 2 02.12.2012 13:15
Вывод списка символов справа налево 5 раз подряд и исключить вывод цифр Gareek Помощь студентам 2 23.12.2011 21:41
Модуль Graph или графический модуль Seferus Паскаль, Turbo Pascal, PascalABC.NET 0 11.12.2011 13:15
Типизированные файлы, модуль Crt, Модуль Graph Kate_Fleur Помощь студентам 1 06.05.2010 17:43