УМК ШКОЛА



** По каналу связи передаётся последовательность положительных целых чисел
ОГЭ ЕГЭ - РЕШЕНИЯ ЗАДАНИЙ > ** Программирование и алгоритмизация > ** По каналу связи передаётся последовательность положительных целых чисел
 


Задания - решение
№ 1 По каналу связи передаётся последовательность положительных целых чисел, все числа не превышают 1000. Количество чисел известно, но может быть очень велико. Затем передаётся контрольное значение последовательности – наибольшее число R, удовлетворяющее следующим условиям:

1) R – произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных элементов последовательности, равных по величине, допускаются);

2) R делится на 22.

Если такого числа R нет, то контрольное значение полагается равным 0.

В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.

Напишите эффективную, в том числе по используемой памяти, программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет проверять правильность контрольного значения. Программа должна напечатать отчёт по следующей форме:

Вычисленное контрольное значение: …

Контроль пройден (или – Контроль не пройден)

Перед текстом программы кратко опишите используемый Вами алгоритм решения.

На вход программе в первой строке подаётся количество чисел N. В каждой из последующих N строк записано одно натуральное число, не превышающее 1000. В последней строке записано контрольное значение.

Пример входных данных:

6
55
997
22
7
9
400
22000

Пример выходных данных для приведённого выше примера входных данных:

Вычисленное контрольное значение: 22000
Контроль пройден
РЕШЕНИЕ:

Алгоритм:
1. Вводим данные
2. Формируем массив R(i) из значений R
3. Находим максимальное значение массива R(i)
4. Выводим полученное максимальное значение и сравниваем его с контрольным К

DIM v(999) AS long
DIM d(99) AS long
DIM R(99) AS long
dim s as long

INPUT "Общее количество всех чисел", N

FOR i = 1 TO N
Input v(i)
NEXT i

input "Контрольное значение", K
j=1

FOR i = 1 TO N-1
  for z=i+1 TO N
     s =v(i)*v(z)
     if (s mod 22 = 0) then
     R(j)= s
     j=j+1
     end if
  next z
next i

max=-99999

FOR i = 1 TO j
IF R(i)>max THEN max=R(i)
NEXT i

if R(1)=0 then
print "Вычисленное контрольное значение:",0
max=0
else
print "Вычисленное контрольное значение:",max
end if

if max=K then
print "Контроль пройден"
else
print "Контроль не пройден"
end if

№ 2 По каналу связи передаётся последовательность положительных целых чисел, все числа не превышают 1000. Количество чисел известно, но может быть очень велико. Затем передаётся контрольное значение последовательности – наибольшее число R, удовлетворяющее следующим условиям:

1) R – произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных элементов последовательности, равных по величине, допускаются);

2) R делится на 6.

Если такого числаR нет, то контрольное значение полагается равным 0.

В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.

Напишите эффективную, в том числе по используемой памяти, программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет проверять правильность контрольного значения. Программа должна напечатать отчёт по следующей форме:

Вычисленное контрольное значение: …

Контроль пройден (или – Контроль не пройден)

Перед текстом программы кратко опишите используемый Вами алгоритм решения.

На вход программе в первой строке подаётся количество чисел N. В каждой из последующих N строк записано одно натуральное число, не превышающее 1000. В последней строке записано контрольное значение.

Пример входных данных:

6
70
17
6
99
997
70
6930

Пример выходных данных для приведённого выше примера входных данных:

Вычисленное контрольное значение: 6930
Контроль пройден
РЕШЕНИЕ:

Алгоритм:
1. Вводим данные
2. Формируем массив R(i) из значений R
3. Находим максимальное значение массива R(i)
4. Выводим полученное максимальное значение и сравниваем его с контрольным К

DIM v(999) AS long
DIM d(99) AS long
DIM R(99) AS long
dim s as long

INPUT "Общее количество всех чисел", N

FOR i = 1 TO N
Input v(i)
NEXT i

input "Контрольное значение", K
j=1

FOR i = 1 TO N-1
  for z=i+1 TO N
     s =v(i)*v(z)
     if (s mod 6 = 0) then
     R(j)= s
     j=j+1
     end if
  next z
next i

max=-99999

FOR i = 1 TO j
IF R(i)>max THEN max=R(i)
NEXT i

if R(1)=0 then
print "Вычисленное контрольное значение:",0
max=0
else
print "Вычисленное контрольное значение:",max
end if

if max=K then
print "Контроль пройден"
else
print "Контроль не пройден"
end if

№ 3 По каналу связи передаётся последовательность положительных целых чисел, все числа не превышают 1000. Количество чисел известно, но может быть очень велико. Затем передаётся контрольное значение последовательности – наибольшее число R, удовлетворяющее следующим условиям:

1) R – произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных элементов последовательности, равных по величине, допускаются);

2) R делится на 10.

Если такого числа R нет, то контрольное значение полагается равным 0.

В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.

Напишите эффективную, в том числе по используемой памяти, программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет проверять правильность контрольного значения. Программа должна напечатать отчёт по следующей форме:

Вычисленное контрольное значение: …

Контроль пройден (или – Контроль не пройден)

Перед текстом программы кратко опишите используемый Вами алгоритм решения.

На вход программе в первой строке подаётся количество чисел N. В каждой из последующих N строк записано одно натуральное число, не превышающее 1000. В последней строке записано контрольное значение.

Пример входных данных:

6
95
17
10
102
957
95
9690

Пример выходных данных для приведённого выше примера входных данных:

Вычисленное контрольное значение: 9690
Контроль пройден
РЕШЕНИЕ:

Алгоритм:
1. Вводим данные
2. Формируем массив R(i) из значений R
3. Находим максимальное значение массива R(i)
4. Выводим полученное максимальное значение и сравниваем его с контрольным К

DIM v(999) AS long
DIM d(99) AS long
DIM R(99) AS long
dim s as long

INPUT "Общее количество всех чисел", N

FOR i = 1 TO N
Input v(i)
NEXT i

input "Контрольное значение", K
j=1

FOR i = 1 TO N-1
  for z=i+1 TO N
     s =v(i)*v(z)
     if (s mod 10 = 0) then
     R(j)= s
     j=j+1
     end if
  next z
next i

max=-99999

FOR i = 1 TO j
IF R(i)>max THEN max=R(i)
NEXT i

if R(1)=0 then
print "Вычисленное контрольное значение:",0
max=0
else
print "Вычисленное контрольное значение:",max
end if

if max=K then
print "Контроль пройден"
else
print "Контроль не пройден"
end if

№ 4 По каналу связи передаётся последовательность положительных целых чисел, все числа не превышают 1000. Количество чисел известно, но может быть очень велико. Затем передаётся контрольное значение последовательности – наибольшее число R, удовлетворяющее следующим условиям:

1) R – произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных элементов последовательности, равных по величине, допускаются);

2) R делится на 21.

Если такого числаR нет, то контрольное значение полагается равным 0.

В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.

Напишите эффективную, в том числе по используемой памяти, программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет проверять правильность контрольного значения. Программа должна напечатать отчёт по следующей форме:

Вычисленное контрольное значение: …

Контроль пройден (или – Контроль не пройден)

Перед текстом программы кратко опишите используемый Вами алгоритм решения.

На вход программе в первой строке подаётся количество чисел N. В каждой из последующих N строк записано одно натуральное число, не превышающее 1000. В последней строке записано контрольное значение.

Пример входных данных:

6
70
21
997
7
9
300
21000
Пример выходных данных для приведённого выше примера входных данных:

Вычисленное контрольное значение: 21000
Контроль пройден
РЕШЕНИЕ:

Алгоритм:
1. Вводим данные
2. Формируем массив R(i) из значений R
3. Находим максимальное значение массива R(i)
4. Выводим полученное максимальное значение и сравниваем его с контрольным К

DIM v(999) AS long
DIM d(99) AS long
DIM R(99) AS long
dim s as long

INPUT "Общее количество всех чисел", N

FOR i = 1 TO N
Input v(i)
NEXT i

input "Контрольное значение", K
j=1

FOR i = 1 TO N-1
  for z=i+1 TO N
     s =v(i)*v(z)
     if (s mod 21 = 0) then
     R(j)= s
     j=j+1
     end if
  next z
next i

max=-99999

FOR i = 1 TO j
IF R(i)>max THEN max=R(i)
NEXT i

if R(1)=0 then
print "Вычисленное контрольное значение:",0
max=0
else
print "Вычисленное контрольное значение:",max
end if

if max=K then
print "Контроль пройден"
else
print "Контроль не пройден"
end if


 
Перейти на другой форум:



Логин: Пароль: Забыли пароль?Регистрация
Сайт сделан на SiNG cms © 2010-2020