Задать вопрос
13 декабря, 16:23

Помогите, программа не работает, нужно разложить 4-хзначное число на цифры

var a, a1, a2, a3, a4:integer;

begin

write ('vv ch') ;

read (a) ;

a1: = a/1000;

a2: = a/100 mod 10;

a3: = a/10 mod 10;

a4: = a mod 10;

write (a1, a2, a3, a4) ;

end.

где ошибка?!

+1
Ответы (2)
  1. 13 декабря, 16:56
    0
    Если я все правильно понял, нужно "/" заменить на div, т. к. вы используете тип integer.
  2. 13 декабря, 17:49
    0
    Я бы сделал так:

    var a, a1, a2, a3, a4:integer;

    begin

    write ('Введите четырехзначное число: ') ; read (a) ;

    a1: = a div 1000;

    a2: = a div 100 mod 10;

    a3: = a div 10 mod 10;

    a4: = a mod 10;

    writeln ('Первая цифра: ', a1) ;

    writeln ('Вторая цифра: ', a2) ;

    writeln ('Третья цифра: ', a3) ;

    writeln ('Четвёртая цифра: ', a4) ;

    end.

    Этот вид более эстетичный;)
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Помогите, программа не работает, нужно разложить 4-хзначное число на цифры var a, a1, a2, a3, a4:integer; begin write ('vv ch') ; read (a) ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы
Похожие вопросы по информатике
Укажите области видимости в программе: Program P; Var x: integer; Procedure P1; Var y: integer; Begin P2; End; Procedure P2; Var z: integer; Begin {Тело процедуры} End; Procedure P3; Var m: integer; Begin P1; End; Begin {Тело основной программы}P3;
Ответы (1)
Переведите программу в Free Pascal var A: Array [1 ... 100] of integer; size: integer; Even: integer; notEven: integer; begin Write ('Set size A : ') ; Read (size) ; for i:integer : = 1 to size do begin Write ('Set A[', i, ']: ') ; Read (A[i]) ; end;
Ответы (2)
Объясните строчку (c:=10*c+a mod 10; a : = a div 10;) program pr36; function qwer (var a, b: integer) : integer; var c: integer; begin c:=0; while a > 0 do begin c:=10*c+a mod 10; a : = a div 10; end; qwer: = c; end; var a, b: integer;
Ответы (1)
Что не так? (процедура обязательна) procedure random (k:integer) ; var a:array[1 ... 100] of integer; var l:integer; begin for l:=1 to k do begin a[l]:=random (100) ; writeln (a[l]) ; end; end; var v:integer; begin write ('Сколько будет чисел?
Ответы (2)
Какое число будет напечатано в результате выполнения программы: var i, k: integer; function f (x: integer) : integer; var m: integer; begin if x < 10 then f : = x else begin m : = f (x div 10) ; if m < x mod 10 then f : = x mod 10 else f : = m; end;
Ответы (1)