ЕГЭ, вопрос 17: П. Умение создавать собственные программы (20–40 строк) для обработки целочисленной информации
Проверяемые элементы содержания по спецификации (2019): Умение составить алгоритм и записать его в виде простой программы (10–15 строк) на языке программирования.
Кодификатор 1.7.2/1.1.5. Уровень сложности П, 1 балл (был П, 2 балла).
Время выполнения — 15 мин. (было 30 мин.).
Задания
- Демо 2021 ().
- Демо 2020 (25). Дублирует задание 2019 года.
- Демо 2019 (25). Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите
на одном из языков программирования алгоритм, который находит минимум среди элементов массива, не делящихся нацело на 6, а затем
заменяет каждый элемент, не делящийся нацело на 6, на число, равное найденному минимуму. Гарантируется, что хотя бы один такой элемент в
массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки.
Например, для исходного массива из шести элементов: 14 6 11 18 9 24
программа должна вывести следующий массив 9 6 9 18 9 24
Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.Бейсик Python CONST N AS INTEGER = 30
DIM A (1 TO N) AS LONG
DIM I AS LONG,
J AS LONG,
K AS LONG
FOR I = 1 TO N
INPUT A(I)
NEXT I
...
END# допускается также
# использовать две
# целочисленные переменные j и k
a = []
n = 30
for i in range(0, n):
a.append(int(input()))
...Алгоритмический язык Паскаль алг
нач
цел N = 30
целтаб a[1:N]
цел i, j, k
нц для i от 1 до N
ввод a[i]
кц
...
конconst
N = 30;
var
a: array [1..N] of longint;
i, j, k: longint;
begin
for i := 1 to N do
readln(a[i]);
...
end.Си++ #include <iostream>
using namespace std;
const int N = 30;
int main() {
long a[N];
long i, j, k;
for (i = 0; i < N; i++)
cin >> a[i];
...
return 0;
}
- Демо 2018 (25). Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на одном из языков программирования алгоритм,
который находит количество элементов массива, больших 100 и при этом кратных 5, а затем заменяет каждый такой элемент на число, равное найденному количеству.
Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести измененный массив, каждый элемент массива выводится с новой строчки.
Например, для массива из шести элементов: 4 115 7 195 25 106
программа должна вывести числа 4 2 7 2 25 106
Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.Бейсик Python CONST N AS INTEGER = 30
DIM A (1 TO N) AS LONG
DIM I AS LONG,
J AS LONG,
K AS LONG
FOR I = 1 TO N
INPUT A(I)
NEXT I
...
END# допускается также
# использовать две
# целочисленные переменные j и k
a = []
n = 30
for i in range(0, n):
a.append(int(input()))
...Алгоритмический язык Паскаль алг
нач
цел N = 30
цел таб a[1:N]
цел i, j, k
нц для i от 1 до N
ввод a[i]
кц
...
конconst
N = 30;
var
a: array [1..N] of longint;
i, j, k: longint;
begin
for i := 1 to N do
readln(a[i]);
...
end.Си++ #include <iostream>
using namespace std;
const int N = 30;
int main() {
long a[N];
long i, j, k;
for (i = 0; i<N; i++)
cin >> a[i];
...
return 0;
}
- D2018 (25). Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на одном из языков программирования алгоритм,
который находит сумму элементов массива, меньших 200 и при этом кратных 5, а затем заменяет каждый такой элемент на число, равное найденной сумме. Гарантируется, что хотя бы один
такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки. Например, для исходного массива из шести элементов:
204
115
27
20
305
4
программа должна вывести следующий массив
204
135
27
135
305
4
Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.Бейсик Python CONST N AS INTEGER = 30
DIM A (1 TO N) AS LONG
DIM I AS LONG,
J AS LONG,
K AS LONG
FOR I = 1 TO N
INPUT A(I)
NEXT I
...
END# допускается также
# использовать две
# целочисленные переменные j и k
a = []
n = 30
for i in range(0, n):
a.append(int(input()))
...Алгоритмический язык Паскаль алг
нач
цел N = 30
целтаб a[1:N]
цел i, j, k
нц для i от 1 до N
ввод a[i]
кц
... конconst
N = 30;
var
a: array [1..N] of longint;
i, j, k: longint;
begin
for i := 1 to N do
readln(a[i]);
...
end.Си++ #include <iostream>
using namespace std;
const int N = 30;
int main() {
long a[N];
long i, j, k;
for (i = 0; i < N; i++)
cin >> a[i];
...
return 0;
}
- R2018 (25). Дан целочисленный массив из 40 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на естественном языке или на одном из языков программирования
алгоритм, который находит количество элементов массива, меньших 100, не делящихся на 3, после чего заменяет в массиве соответствующие значения на найденное количество.
После чего выводит полученный массив на экран.
Бейсик Python CONST N = 40
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 = 40
for i in range(n):
a.append(int(input()))
...Си++ Паскаль #include <iostream> #define n 40
int main() {
int a[n];
int i, j, k;
for (i = 0; i < n; i++)
std::cin >> a[i];
... return 0; }const n = 40;
var
a: array [0..n-1] of integer;
i, j, k: integer;
begin
for i := 0 to n-1 do
readln(a[i]);
...
end.
- Демо 2017 (25). Дан целочисленный массив из 40 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на
естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести количество пар элементов массива, в которых
десятичная запись хотя бы одного числа оканчивается на 2. В данной задаче под парой подразумевается два подряд идущих элемента массива.
Например, для массива из пяти элементов: 16 3 142 55 22 — ответ: 3.
Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.Бейсик Python CONST N = 40
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 = 40
for i in range(0, n):
a.append(int(input()))
...Алгоритмический язык Паскаль алг
нач
цел N = 40
целтаб a[1:N]
цел i, j, k
нц для i от 1 до N
ввод a[i]
кц
...
конconst
N = 40;
var
a: array [1..N] of integer;
i, j, k: integer;
begin
for i := 1 to N do
readln(a[i]);
...
end.Си Естественный язык #include <stdio.h>
#define N 40
int main() {
int a[N];
int i, j, k;
for (i = 0; i < N; i++)
scanf("%d", &a[i]);
...
return 0;
}Объявляем массив A из 40 элементов.
Объявляем целочисленные переменные I, J, K.
В цикле от 1 до 40 вводим элементы массива A с 1-го по 40-й.
- Демо 2016 (25). Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от –10 000 до 10 000 включительно. Опишите на естественном языке или на одном из языков
программирования алгоритм, позволяющий найти и вывести количество пар элементов массива, в которых хотя бы одно число делится на 3. В данной задаче под парой подразумевается
два подряд идущих элемента массива.
Например, для массива из пяти элементов: 6; 2; 9; –3; 6 — ответ: 4.
Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.Бейсик Python CONST N AS INTEGER = 20
DIM A (1 TO N) AS INTEGER
DIM I AS INTEGER,
J AS INTEGER,
K AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
...
END# допускается также
# использовать две
# целочисленные переменные j и k
a = []
n = 20
for i in range(0, n):
a.append(int(input()))
...Алгоритмический язык Паскаль алг
нач
цел N = 20
целтаб a[1:N]
цел i, j, k
нц для i от 1 до N
ввод a[i]
кц
...
конconst
N = 20;
var
a: array [1..N] of integer;
i, j, k: integer;
begin
for i := 1 to N do
readln(a[i]);
...
end.Си Естественный язык #include <stdio.h>
#define N 20
int main() {
int a[N];
int i, j, k;
for (i = 0; i<N; i++)
scanf("%d", &a[i]);
...
return 0;
}Объявляем массив A из 20 элементов.
Объявляем целочисленные переменные I, J, K.
В цикле от 1 до 20 вводим элементы массива A с 1-го по 20-й.
…
- Демо 2015 (25). Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от –10 000 до 10 000 включительно. Опишите на естественном языке или на одном из языков
программирования алгоритм, позволяющий найти и вывести количество пар элементов массива, сумма которых нечётна и положительна. Под парой подразумевается два подряд идущих элемента массива.
Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.Бейсик Python N = 20
DIM A(N) AS INTEGER
DIM I, J, K AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
...
ENDN = 20 i = None
j = None
k = None
a = [int(input())
for i in range(N)]
...Алгоритмический язык Паскаль алг
нач
цел N = 20
цел таб a[1:N]
цел i, j, k
нц для i от 1 до N
ввод a[i]
кц
...
конconst N = 20;
var
a: array [1..N] of integer;
i, j, k: integer;
begin
for i := 1 to N do
readln(a[i]);
...
end.Си Естественный язык #include <stdio.h>
int main(void)
{
const int N = 20;
int a[N];
int i, j, k;
for (i = 0; i < N; i++)
scanf("%d", &a[i]);
...
}Объявляем массив A из 20 элементов.
Объявляем целочисленные переменные I, J, K.
В цикле от 1 до 20 вводим элементы массива A с 1-го по 20-й.
...
- Демо 2014 (C2). Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от 0 до 10000 включительно. Опишите на естественном языке или на одном из языков программирования
алгоритм, позволяющий найти и вывести максимальное значение среди трёхзначных элементов массива, не делящихся на 9. Если в исходном массиве нет элемента, значение которого является трёхзначным числом
и при этом не кратно 9, то выведите сообщение «Не найдено».
Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.Бейсик Паскаль N = 20
DIM A(N) AS INTEGER
DIM I, J, MAX AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
...
ENDconst
N = 20;
var
a: array [1..N] of integer;
i, j, max: integer;
begin
for i := 1 to N do
readln(a[i]);
...
end.Си Алгоритмический язык #include <stdio.h>>
#define N 20
void main() {
int a[N];
int i, j, max;
for (i = 0; i<N; i++)
scanf("% d", &a[i]);
...
}алг
нач
цел N = 20
целтаб a[1:N]
цел i, j, max
нц для i от 1 до N
ввод a[i]
кц
...
конЕстественный язык Объявляем массив A из 20 элементов.
Объявляем целочисленные переменные I, J, MAX.
В цикле от 1 до 20 вводим элементы массива A с 1-го по 20-й.
- Демо 2013 (C2).
Паскаль Алгоритмический язык const
N=30;
var
a: array [1..N] of longint;
i, j, p: longint;
begin
for i := 1 to N do
readln(a[i]);
…
end.алг
нач
цел N=30
целтаб a[1:N]
цел i, j, p
нц для i от 1 до N
ввод a[i]
кц
...
конБейсик Си N=30
DIM A(N) AS LONG
DIM I, J, P AS LONG
FOR I = 1 TO N
INPUT A(I)
NEXT I
…
END#include <stdio.h>
#define N 30
void main(void){
long a[N];
long i, j, p;
for (i=0; i<N; i++)
scanf("%ld", &a[i]);
…
}Русский (естественный язык) Объявляем массив A из 30 элементов.
Объявляем целочисленные переменные I, J, P.
В цикле от 1 до 30 вводим элементы массива A с 1-го по 30-й.
- Демо 2012 (C2). Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от 0 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм,
позволяющий найти и вывести минимальное значение среди элементов массива, которые имеют чётное значение и не делятся на три. Гарантируется, что в исходном массиве есть хотя бы один элемент,
значение которого чётно и не кратно трем.
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но использовать все описанные переменные не обязательно.Паскаль Алгоритмический язык const
N = 20;
var
a: array [1..N] of integer;
i, j, min: integer;
begin
for i := 1 to N do
readln(a[i]);
…
end.алг
нач
цел N = 20
целтаб a[1:N]
цел i, j, MIN
нц для i от 1 до N
ввод a[i]
кц
...
конБейсик Си N = 20
DIM A(N) AS INTEGER
DIM I, J, MIN AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
…
END#include <stdio.h>
#define N 20
void main(void){
int a[N];
int i, j, min;
for (i=0; i<N; i++)
scanf("% d", &a[i]);
…
}Русский (естественный) язык Объявляем массив A из 20 элементов.
Объявляем целочисленные переменные I, J, MIN.
В цикле от 1 до 20 вводим элементы массива A с 1-го по 20-й.
- Демо K-2012 (C1). Составьте программу, которая вводит с клавиатуры три целых числа: a, b, c (каждое число — с новой строки) и выводит на экран минимальное из них.
Ничего, кроме этого числа, программа выводить не должна.
- Демо K-2012 (C2). Составьте программу, которая вводит с клавиатуры 8 целых неотрицательных чисел (каждое число — с новой строки отдельной командой «ввод»), записывает их в массив,
выводит на экран сначала в прямом порядке все без исключения элементы массива, затем, в обратном порядке относительно следования в массиве, все чётные элементы.
Например, для массива «1 2 5 4 5 3 7 8» программа должна выводить числа в таком порядке: 1 2 5 4 5 3 7 8 8 4 2.
Каждое число программа должна выводить в отдельной строке; ничего, кроме чисел, программа выводить не должна.
- Демо 2011 (C2). Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от 0 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм,
который позволяет подсчитать и вывести среднее арифметическое элементов массива, имеющих нечетное значение. Гарантируется, что в исходном массиве хотя бы один элемент имеет нечетное значение.
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.Паскаль Бейсик const
N=30;
var
a: array [1..N] of integer;
i, x, y: integer;
s: real;
begin
for i:=1 to N do readln(a[i]);
…
end.N=30
DIM A(N) AS INTEGER
DIM I, X, Y AS INTEGER
DIM S AS SINGLE
FOR I = 1 TO N
INPUT A(I)
NEXT I
…
ENDСи Естественный язык #include <stdio.h>
#define N 30
void main(void)
{int a[N];
int i, x, y;
float s;
for (i=0; i<N; i++)
scanf("%d", &a[i]);
…
}Объявляем массив A из 30 элементов.
Объявляем целочисленные переменные I, X, Y.
Объявляем вещественную переменную S.
В цикле от 1 до 30 вводим элементы массива A с 1-го по 30-й.
…
- Демо 2010 (C2). Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 100 — баллы учащихся выпускного класса за итоговый тест по информатике.
Для получения положительной оценки за тест требовалось набрать не менее 20 баллов. Опишите на русском языке или на одном из языков программирования алгоритм, который позволяет найти
и вывести минимальный балл среди учащихся, получивших за тест положительную оценку. Известно, что в классе хотя бы один учащийся получил за тест положительную оценку. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.Паскаль Бейсик const
N=30;
var
a: array [1..N] of integer;
i, j, min: integer;
begin
for i:=1 to N do readln(a[i]);
…
end.N=30
DIM A(N) AS INTEGER
DIM I, J, MIN AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
…
ENDСи Естественный язык #include
#define N 30
void main(void)
{int a[N];
int i, j, min;
for (i=0; iscanf("% d", &a[i]);
…
}Объявляем массив A из 30 элементов.
Объявляем целочисленные переменные I, J, MIN.
В цикле от 1 до 30 вводим элементы массива A с 1-го по 30-й.
…
- Демо 2009 (C2). Опишите на русском языке или одном из языков программирования алгоритм получения из заданного целочисленного массива размером 30 элементов другого массива,
который будет содержать модули значений элементов первого массива (не используя специальной функции, вычисляющей модуль числа).
- Демо 2008 (C2). Опишите на русском языке или одном из языков программирования алгоритм подсчета максимального количества подряд идущих совпадающих элементов в целочисленном массиве длины 30.
- (т2-2012/1).
- (т2-2012/2).
- с114 (25). Дан массив, содержащий 2017 положительных целых чисел, не превышающих 10000. Необходимо найти и вывести количество таких элементов этого массива, шестнадцатеричная запись которых содержит
ровно два знака, причём последний из них — буква от A до F. Например, для массива из 4 элементов, содержащего числа 42, 255, 162, 266, ответ будет равен 2:
в шестнадцатеричной системе эти числа записываются как 2A, FF, A2, 10A; первые два подходят, в третьем — последняя цифра не записывается буквой, в четвертом — больше двух знаков.
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных.Бейсик Python CONST N=2017
DIM A(N) AS INTEGER
DIM I, M, K AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
…
END# допускается также использование
# целочисленных переменных m, k
a = []
N = 2017
for i in range(0, N):
a.append(int(input()))
…Алгоритмический язык Паскаль алг
нач
цел N=2017
целтаб a[1:N]
цел i, m, k
нц для i от 1 до N
ввод a[i]
кц
…
конconst
N=2017;
var
a: array [1..N] of integer;
i, m, k: integer;
begin
for i:=1 to N do
readln(a[i]);
…
end.Си #include <stdio.h>
#define N 2017
int main(){
int a[N];
int i, m, k;
for (i=0; i<N; i++)
scanf("%d", &a[i]);
…
return 0;
}
- с124 (25). Дан массив, содержащий 2017 положительных целых чисел, не превышающих 10000. Необходимо найти и вывести сумму таких элементов этого массива,
шестнадцатеричная запись которых содержит ровно три знака, причём последний из них — буква от A до F. Например, для массива из 4 элементов, содержащего числа 522, 4095, 296, 205, ответ будет равен 4617:
в шестнадцатеричной системе эти числа записываются как 20A, FFF, 128, CD; первые два подходят, в третьем — последняя цифра не записывается буквой, в четвёртом — меньше трёх знаков.
Если таких чисел в массиве нет, сумма считается равной 0.
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных.Бейсик Python CONST N=2017
DIM A(N) AS INTEGER
DIM I, M, K AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
…
END# допускается также использование
# целочисленных переменных m, k
a = []
N = 2017
for i in range(0, N):
a.append(int(input()))
…Алгоритмический язык Паскаль алг
нач
цел N=2017
целтаб a[1:N]
цел i, m, k
нц для i от 1 до N
ввод a[i]
кц
…
конconst
N=2017;
var
a: array [1..N] of integer;
i, m, k: integer;
begin
for i:=1 to N do
readln(a[i]);
…
end.Си++ #include <stdio.h>
#define N 2017
int main(){
int a[N];
int i, m, k;
for (i=0; i<N; i++)
scanf("%d", &a[i]);
…
return 0;
}
- с113 (25). Дан массив, содержащий 2017 положительных целых чисел, не превышающих 10000. Необходимо найти и вывести количество таких элементов этого массива, шестнадцатеричная запись которых содержит
ровно два знака, и при этом первая цифра больше второй. Например, для массива из 4 элементов, содержащего числа 160, 148, 63, 528, ответ будет равен 2. В шестнадцатеричной системе
эти числа записываются как A0, 94, 3F, 210; первые два числа подходят, в третьем — первая цифра не больше второй, в четвёртом — больше двух знаков.
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных.Бейсик Python CONST N=2017
DIM A(N) AS INTEGER
DIM I, M, K AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
…
END# допускается также использование
# целочисленных переменных m, k
a = []
N = 2017
for i in range(0, N):
a.append(int(input()))
…Алгоритмический язык Паскаль алг
нач
цел N=2017
целтаб a[1:N]
цел i, m, k
нц для i от 1 до N
ввод a[i]
кц
…
конconst
N=2017;
var
a: array [1..N] of integer;
i, m, k: integer;
begin
for i:=1 to N do
readln(a[i]);
…
end.Си #include <stdio.h>
#define N 2017
int main(){
int a[N];
int i, m, k;
for (i=0; i<N; i++)
scanf("%d", &a[i]);
…
return 0;
}
- с123 (25). Дан массив, содержащий 2017 положительных целых чисел, не превышающих 10000. Необходимо найти и вывести количество таких элементов этого массива, шестнадцатеричная запись которых содержит
ровно два знака, и при этом первая цифра меньше второй. Например, для массива из 4 элементов, содержащего числа61, 191, 146, 528, ответ будет равен 2. В шестнадцатеричной системе эти числа
записываются как 3D, BF, 92, 210; первые два числа подходят, в третьем — первая цифра не меньше второй, в четвертом — больше двух знаков.
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных.Бейсик Python CONST N=2017
DIM A(N) AS INTEGER
DIM I, M, K AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
…
END# допускается также использование
# целочисленных переменных m, k
a = []
N = 2017
for i in range(0, N):
a.append(int(input()))
…Алгоритмический язык Паскаль алг
нач
цел N=2017
целтаб a[1:N]
цел i, m, k
нц для i от 1 до N
ввод a[i]
кц
…
конconst
N=2017;
var
a: array [1..N] of integer;
i, m, k: integer;
begin
for i:=1 to N do
readln(a[i]);
…
end.Си #include <stdio.h>
#define N 2017
int main(){
int a[N];
int i, m, k;
for (i=0; i<N; i++)
scanf("%d", &a[i]);
…
return 0;
}