Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Программа к задаче 11




NEXT i

NEXT j NEXT i

NEXT i INPUT b(i,j) PRINT

DIM список_массивов

Описание массива содержит имя массива и его размерность. Например, оператор DIM A(20), B(4,6) читается как “Установить размерность одномерного массива А из 20 элементов и двумерного массива В из 24–х элементов (4 строки, 6 столбцов)”.

По умолчанию отсчет элементов в Бейсике начинается с нуля, то есть оператор DIM А(20) определяет на самом деле 21 элемент памяти (нулевой элемент можно игнорировать). Если есть необходимость установить нестандартную нумерацию, можно при определении размерности использовать указатель вида нижняя граница индекса ТО верхняя граница. Например, оператор DIM Y(5 TO 20, 1 TO 8) определяет двухмерный мас­сив Y, у которого первый индекс изменяется от 5 до 20, а второй – от 1 до 8. Размерность массива задается исходя из условий решаемой задачи.

Первоочередной задачей при работе с массивами является ввод-вывод данных в них, который организуется с помощью циклов, как, например, показано ниже.

INPUT n INPUT n,m FOR i=1 TO n

DIM a(n) DIM b(n,m) FOR i=1 TO n

FOR i=1 TO n FOR i=1 TO n PRINT b(i,j);

INPUT a(i) FOR j=1 TO m NEXT j

Слева осуществляется ввод данных в вектор А размерностью N эле­ментов. В центре – в матрицу В размерностью N строк на M столбцов. Ввод осуществляется с помощью двух циклов, один из которых вложен в другой. В наружном цикле изменяется первый индекс I элемента матрицы В, во внутреннем – второй индекс J. Таким образом, второй индекс J изменяется быстрее, чем первый. Это означает, что ввод элементов матрицы будет производиться в следующей последовательности: B(1,1), B(1,2),..., B(1,M); B(2,1), B(2,2),..., B(2,M);...; B(1,N), B(1,N),... B(M,N), т.е. по строкам. Замечание. Два последних оператора могут быть объединены в один вида NEXT j,i (первым должен быть указан индекс внутреннего цикла, вторым – внешнего).

Аналогичным образом осуществляется и вывод (фрагмент программы справа), но вместо оператора INPUT используется оператор PRINT. Здесь, однако, следует позаботиться об удобстве восприятия выводимых данных. Желательно, чтобы строка матрицы занимала на экране именно одну строку. Для этого во внутреннем цикле печати нужно поставить точку с запятой после оператора вывода (PRINT;), что подавляет возврат каретки после вывода каждого числа. Для того, чтобы осуществить переход на новую строку после завершения предыдущей, ниже оператора NEXT j следует поставить пустой оператор PRINT, который переведет вывод на следующую строку экрана. Кроме того, для обеспечения фиксированного расположения элементов матрицы друг под другом в столбцы, имеет смысл использовать для вывода не оператор PRINT, а PRINT USING (например PRINT USING “####.##”; b(i,j);).

Задача 10. В векторе С предельной размерности 30 элементов найти максимальный по значению элемент и его номер в С. Ниже приведена программа и ее проверка для N=4 и C=[5,2,7,4] в ее обрабатывающей части (с оператора m=c(1)). Здесь переменная М запоминает значение максимального элемента, а К – номер этого элемента в векторе С. Первоначально в качестве такого элемента берется самый первый.

 

Программа к задаче 10 DIM c(30) INPUT n FOR i=1 TO n INPUT c(i) NEXT   Проверка    
m=c(1): k=1 FOR i=2 TO n IF m<c(i) THEN m=c(i): k=i NEXT ?m k m=5, k=1 i=2 5>2 i=3 5<7 m=7,k=3 i=4 7>4 i=5 7, 3

Задача 11. Определение значения вклада в банке на конец года. Положим в банке имеется N счетов вкладчиков. Для всех известны значения остатков на счете в конце каждого квартала. Следует определить и напечатать значения всех вкладов на конец года с учетом известного процента роста вклада Р. Данные о вкладах хранятся в массиве Х из N строк и пяти столбцов. Первые четыре элемента каждой i-ой строки (Х(i,1), Х(i,2), Х(i,3), Х(i,4)), хранят остатки вклада на конец каждого из четырех кварталов года. В последний, пятый элемент строки X(i,5) следует занести вычисленную величину вклада на конец года, который равен остатку вклада на конец последнего квартала Х(i,4) плюс установленный процент Р/100 от среднего значения вклада (Х(i,1)+Х(i,2)+ Х(i,3)+Х(i,4))/4 за год. Таким образом, X(i,5)=Х(i,4)+ (Р/100)*(Х(i,1)+Х(i,2)+ Х(i,3)+Х(i,4))/4.

 

I кв Х(i,1) II кв Х(i,2) III кв Х(i,3) IV кв Х(i,4) Остаток на конец года X(i,5)=Х(i,4)+(Р/100)*(Х(i,1)+Х(i,2)+Х(i,3)+Х(i,4))/4

 

Кроме перечисленного, следует найти сумму всех вкладов в банке S и среднее значение вклада, приходящееся на одного вкладчика S/N.




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 396; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.