ПОМОГИТЕ,ПОЖАЛУЙСТА
Задача на Pascal
Дан массив натуральных чисел А(N), значения элементов которого лежат в диапазоне [2000,3000]. Найти:
а) количество элементов массива, которые являются палиндромами (т.е. читаются одинаково слева направо и справа налево)
б) минимальный элемент среди тех, цифровая запись которых содержит цифру 0 и не содержит цифру 8.

Ответы

Ответ дал: GrillMace
1

Ответ:

Обьяснение снизу.

Объяснение:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

const

 n = 100;

 

var

 a: array [1..n] of integer;

 i: integer;

 x, maxi, summa: integer;

 

function prime(a: integer): boolean;

var

 k: integer;

begin

 prime := True;

 for k := 2 to trunc(sqrt(a)) do  

   if a mod k = 0 then  

   begin

     prime := False;  

     break;

   end;

end;

 

 

begin

 for i := 1 to n do

 begin

   a[i] := random(1501) + 1500;

   write(a[i]:8);

 end;

 writeln;

 summa := 0;

 maxi := 0;

 for i := 1 to n do

 begin

   x := a[i];

   while x > 0 do

   begin

     if (x mod 10 = 7) and odd(a[i]) then  

     begin

       summa := summa + a[i];  

       break;  

     end;

     x := x div 10;

   end;

   if (prime(a[i])) and (a[i] > maxi) then  

     maxi := a[i];

 end;  

 writeln('Cумма элементов массива, которые нечетны и имеют цифру 7 в записи: ', summa);  

 writeln('Максимальное простое: ', maxi);

end.

GRILLMACE ©

Вас заинтересует