СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости




Задания
Версия для печати и копирования в MS Word
Задание 25 № 2938

Дан целочисленный массив из 23-х элементов. Элементы массива могут принимать значения от 1500 до 2000 — количество знаков в статье. На сайт принимаются статьи размером не более 1800 знаков и не менее 1600. Гарантируется, что такие значения в базе данных есть.

Опишите на русском языке или на одном из языков программирования алгоритм, который находит и выводит на экран размер самой большой статьи, которую можно разместить на сайте.

Исходные данные объявлены так, как показано ниже. Запрещается использовать не объявленные переменные, но разрешается не использовать часть из них.

 

 

БейсикPython

CONST N = 23

DIM A (1 TO N) AS INTEGER

DIM I, J, K AS INTEGER

FOR I = 1 TO N

INPUT A(I)

NEXT I

END

// допускается также использовать

// две целочисленные переменные

// j и k

a = []

n = 23

for i in range(0, n):

a.append(int(input()))

ПаскальАлгоритмический язык

const

N = 23;

var

a: array [1..N] of

integer;

i, j, k: integer;

begin

for i := 1 to N do

readln(a[i]);

end.

алг

нач

цел N = 23

целтаб a[1:N]

цел i, j, k

нц для i от 1 до N

ввод a[i]

кц

кон

Си++

#include <iostream>

#define N 23

using namespace std;

int main() {

int a[N];

int i, j, k;

for (i=; i < N; i++)

cin >> a[i];

return 0;

}

 

 

В качестве ответа вам необходимо привести фрагмент программы на любом языке программирования (укажите название и версию языка программирования, например, Borland Pascal 7.0) или описание алгоритма на естественном языке, который должен находиться на месте многоточия.

Решение.

Паскаль (Решение Марии Плинер)

 

const N=23;

var a:array[1..N] of integer;

i, j, k: integer;

begin

for i := 1 to N do readln(a[i]);

k:= 0;

for i:= 1 to N do

if (a[i]>=1600) and (a[i]<=1800) and (a[i]>=k) then

k:=a[i];

writeln(k);

end.

 

Си++

 

#include <iostream>

using namespace std;

#define N 23

int main(void)

{

int a[N];

int i,j,k;

k = 0;

for (int i=0; i<N; i++) cin >> a[i];

if (a[i]<=1800 && a[i]>=1600 && a[i]>k) k=a[i];

cout << k<< endl;

}

 

Естественный язык

 

Объявляем массив А из 23 элементов. Объявляем целочисленные переменные i, j, k. В цикле от 1 до 23 вводим элементы массива А с 1-го по 23-й.

Записываем в переменную k начальное значение, равное 0. В цикле от первого элемента до двадцать третьего сравниваем элементы исходного массива с числами 1800 и 1600 и со значением переменной k. Если текущий элемент меньше либо равен 1800 и больше либо равен 1600 и больше либо равен k, то присваиваем переменной k значение текущего элемента массива. Переходим к следующему элементу. После завершения цикла выводим значение переменной К

 

Python

 

i=0

for f in range (0,n):

    if a[f]>=1600 and a[f]<=1800 and a[f]>i:

        i=a[f]

print(i)