Другие языки программирования и технологии

Нужно решить задачу в Паскале.

С клавиатуры вводится шестизначный номер трамвайного билета. Определить, является ли билет счастливым.

Пояснение : использовать операции div и mod для определения цифр. Для каждой цифры иметь отдельную переменную для хранения. Для суммы первых трех и последних трех также отдельные переменные.

Попробовала решить сама:

program bilet;
var a1,a2,a3,a4,a5,a6,b,c,d:integer;
begin
readln(d);
d:=b+c;
b:=a1+a2+a3;
c:=a4+a5+a6;
if(b div c=1) then writeln('Счастливый билет') else writeln('Несчастливый билет');
end.

Где ошибка? Как исправить? Помогите, пожалуйста.
var n,s,i:integer;
begin
readln(n);
for i:=1 to 6 do begin if i<4 then inc(s,n mod 10) else dec(s,n mod 10);n:=n div 10;end;
if s=0 then writeln('Счастливый билет') else writeln('Несчастливый билет');
end.

Для каждой циферки отдельную переменную заводить это извевательство. . Можно тремя переменными обойтись на всю программу

Вот как это говнокод будет выглядеть, если уж на то пошло) )

var n,a1,a2,a3,a4,a5,a6,a13,a46:Integer;
begin
readln(n);
a1:=n mod 10;
n:=n div 10;
a2:=n mod 10;
n:=n div 10;
a3:=n mod 10;
n:=n div 10;
a4:=n mod 10;
n:=n div 10;
a5:=n mod 10;
n:=n div 10;
a6:=n mod 10;
n:=n div 10;
a13:=a1+a2+a3;
a46:=a4+a5+a6;
if a13=a46 then writeln('Счастливый билет') else writeln('Несчастливый билет');
end.
Сергей Проскурня
Сергей Проскурня
15 838
Лучший ответ
Для каждой цифры - отдельную переменную.. . Это идиотизм, но в таком случае (один из путей) вам требуется представить вводимый результат как строку (string), а затем парсить ее. Например, первый символ - в одну переменную (с преобразованием типов) , второй символ - в другую и т. д. А то, что вы написали - неработоспособно.
readln(d);
ОК, считали ввод пользователя в переменную d.
d:=b+c;
А теперь что? Затерли эти данные суммой b+c, но значений b и с я нигде не видел. Т. е. , по сути, после этого прежнее значение d будет потеряно. Всё, что вводил пользователь - насмарку.
b:=a1+a2+a3;
c:=a4+a5+a6;
этих переменныхз вообще нигде нет
BRUH