ПАСКАЛЬ АВС: ПРОБЛЕМА С СУММАТОРОМ

Пытаюсь сделать сумматор чисел, хочу сделать, чтобы 3-е слагаемое можно было добавить на выбор: словами "Да" или "Нет" (в программе вместо слов цифры через переменную char), почему-то поле ввода пропадает на этапе выбора. Укажите где ошибка и как ее исправить, отдельно отблагодарю за приложение примера работающей программы. Заранее спасибо!


restIess: свою программу прикрепите, так проще будет
Fokkii: Program Variables;
var
a,b,c,d:real;
e:string;

begin

writeln('######СУММАТОР######');
writeln(' ');
write('Введите первое слагаемое (вводите десятичные дроби через точку): ');
read(a);
write('Введите второе слагаемое: ');
read(b);
write('Введите второе слагаемое: ');
read(e );

if e = '0' then
begin
write('Введите третье слагаемое: ');
read (d);
c := (a+b+d);
writeln('Сумма слагаемых равна ',c,'.');
end;

if e = '1' then
begin
c := (a+b);
writeln('Сумма слагаемых равна ',c,'.');
end;

end.
restIess: write('Введите второе слагаемое: ');
read(e ); Для чего это вообще?
Fokkii: Это запись 3-его слагаемого должна была быть.
restIess: сначала вводим 3 слагаемых, затем спрашиваем у пользователя, хочет ли он чтобы прибавилось третьей, затем прибавляем или не прибавляем третье слагаемое, так?
Fokkii: Сперва спрашиваем, потом вводим.

Ответы

Ответ дал: kombat1488
1

program summator;

uses

crt;

var

a, b, c, s: real;

var

cmd: string;

begin

writeln('Сумматор v.2.0 активирован');

writeln;

writeln('Введите первое слагаемое:');

readln(a);

writeln('Введите второе слагаемое:');

readln(b);

writeln('Хотите добавить третье слагаемое?');

writeln(' ("Да" либо "Нет")');

readln(cmd);

if (cmd = 'Да') or (cmd = 'да') then

begin

writeln('Введите третье слагаемое:');

readln(c);

s := a + b + c

end

else

s := a + b;

writeln('Сумматор выполнил задачу: ', s);

readln;

end.


Fokkii: Спасибо, буду использовать!
Fokkii: А есть возможность без консоли?
kombat1488: Да, есть. Через файлы
kombat1488: Но, поверь, это гораздо дольше, чем через консоль
Вас заинтересует