145
Таким образом подсчет баллов показывает, что в МЭСИ для получения положительной оценки на
экзаменах по информатике необходимо решить хотя бы одну задачу на составление программ, а
решение задач на составление двух программ - гарантирует на экзамене положительную оценку.
В виду указанной особенности вступительных экзаменов по информатике в МЭСИ разберем
примеры решения задач на составление программ, используя для описания алгоритмов псевдокод, а не
блок-схемы, как это делается в учебниках МЭСИ.
Задача 1. Написать программу на любом языке программирования согласно следующему условию.
Дана целочисленная матрица А размера M
N, где M,N - заданные натуральные числа. Найти
количество столбцов матрицы, содержащих одни нулевые элементы.
Пример матрицы:
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
1
Для представления матрицы в программе на языке Бейсик можно использовать операторы
data, в
первой строке которых указывается размерность матрицы:
data 5
data 1, 0, 1, 0, 0
data 0, 1, 0, 0, 0
data 0, 0, 1, 0, 0
data 0, 1, 0, 0, 0
data 0, 0, 0, 0, 0
Для вывода исходных данных и результатов их обработки можно воспользоваться следующим
сценарием:
Матрица А<n><n>:
<а
11
> ... <a
1n
>
<a
nl
>
<a
nn
>
Число нулей в столбцах:
<d1> ... <d
n
>
Решением поставленной задачи на ЭВМ можно получить с помощью следующего алгоритма и
программа на языке Бейсик. Обратите внимание в программе используются массивы переменной
длины, которая определяется при вводе размеров матрицы А:
' подсчет нулевых столбцов
' алг «подсчет нулевых столбцов»
'
в квадратной матрице Ann
' нач
read n
' чтение(п)
dim A(n,n), D(n)
'
массивы А(1:п,1:п), D(1:n)
print «Матрица A»;n;n;«:»
' вывод («Матрица А»;п;п; «:»)
for k = 1 to n
'
от k = 1 до п цикл
for 1 =1 to n
' от l =1 до п цикл
read A(k,l)
' чтение A(k,l)
print A(k,l)
'
вывод A(k,l)
next 1
' кцикл
next k
' кцикл
for k = 1 to n
' om k= 1 до п цикл
D(k) = 0
'
D(k) = 0
for 1 = 1 to n
' от l=1 до п цикл
|