Работа с массивами чисел.
Постановка задачи: Написать программу, которая для введенного числа N формирует двумерный массив заданного в варианте вида. В задании дан массив для N = 4. Выполнить конкретное задание. Программа должна работать с массивами для любого N. Вид массива: Полученный массив напечатать. Найти количество чисел, входящих в массив больше одного раза. Результат напечатать. Печать и задание оформить в виде процедур. Текст программы: sub vvod(vmas()) cls print “Вводим элементы массива, размерность (“;n;n;”)” for i=1 to n for j=1 to n input “Введите элемент (“;I;j;”)=”;vmas(I,,j) next j,i end sub sub myprint(vmas) print “Ваш массив имеет вид.” for i=1 to n for j=1 to n print using”###”;vmas(I,); next next end sub rem 2D_Array ‘Основная программа const n=4 const par=(n*4) defint i,j,i1,j1,kol,kolo,l,k dim mas(1 to n,1 to n) dim im(1 to par) call vvod(mas) call print(mas) for i=1 to par: im(i)=0: next k=1 kolo=0 for i=1 to n for j1 to n for l=1 to par: if im(l)=mas(I,,j) then goto sle: next kol=0 for i1=1 to n: for j1=1 to n: if mas(I,,j)=mas(i1,,j1) then kol=kol+1: next if kol>1 then kolo=kolo+kol: im(k)=mas(i,j): k=k+1 next sle:end print “Количество чисел, входящих в массив больше одного раза(без нулей) =”kolo print “Программа закончена, нажмите Enter” Результаты работы:
Варианты заданий. 1) Вид массива: Полученный массив напечатать. Найти суммы чисел в первом и последнем столбцах и сравнить их. Вывести результаты на печать с соответствующим сообщением. Задания и печать оформить в виде процедур (функций). 2) Вид массива: Полученный массив напечатать. Сравнить сумму произведений элементов строк и произведение сумм элементов столбцов и напечатать с соответствующими сообщениями. Печать и задания оформить в виде процедур (функций). 3) Вид массива: Полученный массив напечатать. Найти максимальный элемент среди элементов, сумма индексов которых нечетна. Результат вывести на печать. Задания и печать оформить в виде процедур или функций. 4) Вид массива: Полученный массив напечатать. Упорядочить массив по убыванию элементов в каждом столбце. Результат напечатать. Печать и задания оформить в виде процедур. 5) Вид массива: Полученный массив напечатать. Упорядочить массив по возрастанию элементов в каждой строке. Печать и задание оформить в виде процедур (функций). 6) Вид массива: Полученный массив напечатать. Найти произведение индексов элементов в первой строке, а затем в последней, и сравнить их. Результаты напечатать с соответствующими заголовками. Печать и задание оформить в виде процедур. 7) Вид массива: Полученный массив напечатать. Найти количество чисел, входящих в массив только один раз. Результат напечатать. Печать и задание оформить в виде процедур (функций). 8) Вид массива: Полученный массив напечатать. Найти сумму максимального и минимального элементов. Полученное значение увеличить на 10. Результат напечатать. Печать и задание оформить в виде процедур. 9) Вид массива: Полученный массив напечатать. В каждой строке найти наибольший элемент, затем получить их сумму. Результат напечатать. Печать и задание оформить в виде процедур. 10) Вид массива: Полученный массив напечатать. Выяснить, есть ли в массиве хотя бы одна пара совпадающих по величине чисел. Результат напечатать. Печать и задание оформить в виде процедур. 11)Вид массива: Полученный массив напечатать. В каждом столбце найти наименьший элемент, затем найти их произведение. Результат напечатать. Печать и задание оформить в виде процедур (функций). 12) Вид массива: Полученный массив напечатать. Переставить элементы массива так, чтобы все нули оказались в конце. Преобразованный массив напечатать. Печать и задание оформить в виде процедур. 13) Вид массива: Полученный массив напечатать. Найти произведение последних элементов строк. Результат напечатать. Печать и задание оформить в виде процедур (функций). 14) Вид массива: Полученный массив напечатать. Найти сумму элементов, расположенных ниже главной диагонали, и количество элементов, расположенных выше главной диагонали. Результаты напечатать. Печать и задание оформить в виде процедур (функций). 15) Вид массива: Полученный массив напечатать. Перевернуть строку, содержащую максимальное число нулей, и столбец, содержащий минимальное число нулей. Преобразованный массив напечатать. Печать и задание оформить в виде процедур. 16) Вид массива: Полученный массив напечатать. Найти сумму элементов, расположенных на главной диагонали в строках, начинающихся с нуля. Результат напечатать. Печать и задание оформить в виде процедур. 17) Вид массива: Полученный массив напечатать. Упорядочить элементы, находящиеся выше главной диагонали, по убыванию. Преобразованный массив напечатать. Печать и задание оформить в виде процедур. 18) Вид массива: Полученный массив напечатать. Перевернуть все четные строки массива. Преобразованный массив напечатать. Печать и задание оформить в виде процедур. 19) Вид массива: Полученный массив напечатать. Переставить элементы массива так, чтобы нули в каждой строке стояли в конце. Преобразованный массив напечатать. Печать и задание оформить в виде процедур. 20) Вид массива: Полученный массив напечатать. Перевернуть все нечетные столбцы массива. Преобразованный массив напечатать. Печать и задание оформить в виде процедур. 21) Вид массива: Полученный массив напечатать. Найти строку, содержащую минимальный элемент, и упорядочить ее по убыванию элементов. Результат напечатать. Печать и задание оформить в виде процедур. 22) Вид массива: Полученный массив напечатать. Найти третий по величине элемент массива. Результат напечатать. Печать и задание оформить в виде процедур (функций). 23) Вид массива: Полученный массив напечатать. Поставить последнюю строку массива на первое место, не меняя порядок остальных. Результат напечатать. Печать и задание оформить в виде процедур. 24) Вид массива: Полученный массив напечатать. Поставить последний столбец на первое место, не меняя порядок остальных. Результат напечатать. Печать и задание оформить в виде процедур.
|