Напишите на Паскале игру «Лотерея».

1. Программа приветствует пользователя и просит его ввести любое целое семизначное число.

2. Программа разбивает введённое пользователем число на 7 цифр, например, если пользователь ввёл число 1735284, то первая цифра – 1, вторая – 7 и т.д.

3. Затем программа генерирует своё случайное семизначное число при помощи процедуры random.

4. Аналогично пункту 2 программа разбивает на цифры своё сгенерированное число.

Ответы

Ответ дал: raf1O5
0

1 Вариант (с процедурой)

program raf105;

var

 a,b: array of integer;

 i,x: integer;

procedure Divide7(x:integer; arr:array of integer);

begin

 arr[0]:= x div 1000000;

 arr[1]:= (x div 100000) mod 10;

 arr[2]:= (x div 10000) mod 10;

 arr[3]:= (x div 1000) mod 10;

 arr[4]:= (x div 100) mod 10;

 arr[5]:= (x div 10) mod 10;

 arr[6]:= x mod 10;

end;

begin

 SetLength(a,7);

 SetLength(b,7);

 writeln('Добро пожаловать в игру "Лотерея"!');

 write('Введите семизначное число: ');

 readln(x);

 writeln;

 Divide7(x,a);

 x:= random(1000000,9999999);

 Divide7(x,b);

 write('Введённые числа:       ');

 for i:=0 to 6 do

   write(a[i],' ');

writeln;

 write('Сгенерированные числа: ');

   for i:=0 to 6 do

   write(b[i],' ');

end.

2 Вариант (без процедуры)

program raf105;

var

 a,b: array[1..7] of integer;

 i,x: integer;

begin

 writeln('Добро пожаловать в игру "Лотерея"!');

 write('Введите семизначное число: ');

 readln(x);

 writeln;

 a[1]:= x div 1000000;

 a[2]:= (x div 100000) mod 10;

 a[3]:= (x div 10000) mod 10;

 a[4]:= (x div 1000) mod 10;

 a[5]:= (x div 100) mod 10;

 a[6]:= (x div 10) mod 10;

 a[7]:= x mod 10;

 x:= random(1000000,9999999);

 b[1]:= x div 1000000;

 b[2]:= (x div 100000) mod 10;

 b[3]:= (x div 10000) mod 10;

 b[4]:= (x div 1000) mod 10;

 b[5]:= (x div 100) mod 10;

 b[6]:= (x div 10) mod 10;

 write('Введённые числа:       ');

 for i:=1 to 7 do

   write(a[i],' ');

 writeln;

 write('Сгенерированные числа: ');

   for i:=1 to 7 do

   write(b[i],' ');

end.

PascalABC 3.4.2

Ответ дал: FixedMan
0
А можно без использования процедуры, я немного перепутал
Ответ дал: raf1O5
0
Добавил второй вариант без процедуры
Ответ дал: FixedMan
0
Здравствуйте. Можете дописать эту программу, я добавил ещё 4 пункта задачи + вам 43 бала. https://znanija.com/task/32552662 - вот здесь, допишите также без процедуры
Вас заинтересует