albina6580
?>

Подсчитать количество пар чисел '23', '45' по отдельности. паскль

Информатика

Ответы

info-mosbalkon
Microsoft QBasic 1.0

DIM x AS INTEGER, y AS INTEGER
CLS
INPUT "X=", x
INPUT "Y=", y
REDIM C(1 TO x, 1 TO y) AS INTEGER
REDIM k(1 TO y) AS INTEGER
REDIM a(1 TO y) AS DOUBLE
RANDOMIZE TIMER
PRINT "M A T R I X   C"
FOR i = 1 TO x
   k(i) = 0: a(i) = 0
   FOR j = 1 TO y
      C(i, j) = INT(50 * RND + 10)
      PRINT USING "###"; C(i, j);
      IF C(i, j) MOD 7 = 0 THEN
         k(i) = k(i) + 1
         a(i) = a(i) + C(i, j)
      END IF
   NEXT j
   PRINT
NEXT i
PRINT
FOR i = 1 TO y
   PRINT USING "###"; k(i);
NEXT i
PRINT " - Количество"
PRINT "Средние"
FOR i = 1 TO y
   IF k(i) <> 0 THEN
      a(i) = a(i) / k(i)
      PRINT a(i)
   ELSE
      PRINT "Infinity"
   END IF
NEXT i

Пример работы программы
X=6
Y=9
M A T R I X   C
 38 40 31 33 31 22 54 16 43
 23 56 11 19 18 11 34 47 13
 59 59 26 23 54 15 53 20 33
 28 24 39 46 42 37 47 45 41
 20 25 39 35 16 13 12 17 27
 17 49 22 29 28 29 52 40 55

  0  1  0  2  1  2  0  0  0 - Количество
Средние
Infinity
 56
Infinity
 35
 35
 38.5
Infinity
Infinity
Infinity
gorbelena1971
Будет напечатан день декады, в который вылетело меньше всего самолетов.
Причем если таких дней несколько будет выбран последний из них.
В нашем случае это 6.
Ниже в программе после // написано пояснение к нижеследующему коду.

Var k, m, day: integer; 
Dat: array[1...10] of integer;
Begin 
// Здесь определяются значения элементов массиа Dat - количество самолетов за каждый день декады
Dat[1] := 2; 
Dat[2] := 2;
Dat[3] := 3; 
Dat[4] := 3; 
Dat[5] := 2; 
Dat[6] := 2; 
Dat[7] := 5; 
Dat[8] := 5; 
Dat[9] := 6; 
Dat[10] := 6; 
//переменным день и m присваиваются начальные значения
//переменная m предназначена для запоминания промежуточного результата работы алгоритма. 
day:=1; m := Dat[1]; 
//организуем цикл в котором каждый (начиная со второго) день сравнивается с текущим значением m в котором фиксируется каждый раз меньшая величина из двух сравниваемых по количеству самолетов
for k := 2 to 10 do 
//если кол-во самолетов в текущий день (Dat[k]) меньше или равно самому меньшему количеству самолетов за предыдущие дни ( мы помним, что m изначально присвоили значение для первого дня)), то значение m меняем на значение Dat[k] и переменной day присваиваем номер этого дня
if Dat[k] =< m then 
begin 
m:= Dat[k];
day := k;
end; 
//после работы цикла выводим последнее значение day. т.е. номер дня, в котором вылетело меньше всего самолетов
write(day); 
End.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Подсчитать количество пар чисел '23', '45' по отдельности. паскль
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Dmitrievna Lvovich
av4738046
vipteatr
archala
aprelevka
aprilsamara2019
Maksim Dmitrii1579
Butsan-Bagramyan
qwe54344
gumirovane2294
annashaykhattarova1
aleksey7800
PetrovDrozdov1785
safin8813
Рощак_Ольга573