Работа с одномерными массивами. Работа с двумерными массивами
Оценка 4.7

Работа с одномерными массивами. Работа с двумерными массивами

Оценка 4.7
doc
информатика
06.05.2020
Работа с одномерными массивами. Работа с двумерными массивами
Работа с одномерными массивами. Работа с двумерными массивами
43_44_Одномерные и двумерные массивы.doc

Практическая работа № 42-43.

Тема: Программирование.

Наименование: Работа с одномерными массивами. Работа с двумерными массивами

Цель работы: Ознакомиться с понятием массив данных. Научиться составлять, вводить, редактировать и отлаживать программы с использованием массивов.

1. Краткие теоретические сведения.

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

В Бейсике используются одно- и двумерные массивы. Они, как и простые переменные, могут быть различных типов: целые, вещественные, текстовые (строковые) и т. д.

Общий вид элемента массива в Бейсике:

— элемент одномерного массива:   <имя> (k);

— элемент двумерного массива:    <имя> (i, j),

где <имя> — имя массива, должно отвечать тем же правилам, что и имя простой переменной;

k — индекс (номер) элемента одномерного массива, k³0;

i, j — индексы элемента двумерного массива (Номера строки и столбца, на пересечении которых он находится), i³0, j³0. В QBASIC можно установить начальные значения k, i, j равными 1. Индексы k, i, j могут быть представлены любыми арифметическими выражениями. При вычислении выражения, представляющего индекс, в QBASIC результат округляется до ближайшего целого.

Примеры записи элементов массива:

Р$(0), С2(101), Х(46,5*К+1), TX(N/2,M).

Если в программе используется массив, то он должен быть предварительно объявлен, т. е. ЭВМ должна быть сообщена информация о типе и размерах этого массива с помощью оператора DIM.

Пример: оператор DIM P$(6), B%(4,8) сообщает о наличии в программе текстового Р(0:6) и целого В(0:4, 0:8) массивов.

Исходя из информации, содержащейся в операторе DIM, ЭВМ выделяет (резервирует) для каждого массива область памяти требуемого размера.

Общий вид оператора DIM:

— в случае одномерного массива: DIM <имя>{d),

в случае двумерного массива:    DIM <имя>(п, т), где DIM — имя оператора (от слова «dimension» — «размерность»);

<имя> — имя массива;.

d, n, m размеры массива, т. е. d — номер последнего элемента одномерного массива; n(m) — номер последней строки (последнего столбца) двумерного массива.

Размер массива выражается в большинстве версий Бейсика (в том числе в QBASIC) целым числом или целой переменной.

Особенности записи оператора DIM:

1) в одном операторе DIM можно объявлять любое число массивов;

2) оператор DIM рекомендуется помещать в начале программы;

3) не следует использовать в программе простую переменную и массив с одним и тем же именем.


Пример: оператор DIM D%(2), A(2,3), K$(3) сообщает:

— массив D% — одномерный целый, содержащий элементы D%(0), D%(1), D%(2);

оператор DIM K$(3) сообщает:

— массив К — одномерный текстовой, включает элементы К$(0), К$(1), К$(2), К$(3);

— массив А — двумерный вещественный, включает такие элементы:

А(0,0) А(0,1) А(0,2) А(0,3)

А(1,0) А(1,1) А(1,2) А(1,3)

А(2,0) А(2,1) А(2,2) А(2,3),

т. е. содержат три строки и четыре столбца.

Пример 1. Дан массив состоящий из следующей последовательности чисел : 15,3,-2,0,4,1,8,9. Найти среднее арифметическое и вывести на экран все числа меньшие среднего арифметического.
Программа: Пояснения
10 DIM A(8) 20 FOR I = 1 TO 8 30 INPUT “Введите  ”;I;”-е число  ”; A(I) 40 NEXT I 50 FOR I = 1 TO 8 60 S = S + A(I) 70 NEXT I 80 S = S/8: PRINT “Среднее арифметическое =”;S 90 PRINT “Числа меньшие среднего арифметического” 100 FOR I=1 TO 8 110 IF A(I)<S THEN PRINT A(I) 120 NEXT I 130 END Строка 10. Объявление массива   Строка 20-40. Ввод элементов массива     Строка 50-70.  Подсчет суммы элементов массива Строка 80.  Вычисление среднего арифметического   Строка 90-110.  Вывод на экран чисел меньших среднего арифметического.

Пример 2. Студенты сдавали экзамены по трем предметам. Результаты экзамена приведены в таблице:

Фамилия

Математика

Русский язык

Информатика

Ермолаев

3

3

4

Ильин

4

3

5

Климов

3

4

4

Антонов

4

4

4

Алексеев

5

4

5

Иванов

3

4

4

Подсчитать среднюю оценку по каждому предмету и ученику, количество оценок “5”, “4”, “3” по каждому предмету.


 

Программа

Пояснения

CLS

REM

INPUT “Количество студентов”;N

DIM F$(N),O(N,3),P$(3)

DATA “Математика ”, “Русский язык ”,“Информатика”

FOR I=1 TO 3: READ P$(I): NEXT I

FOR I=1 TO N

INPUT “Фамилия- ”;F$(I)

PRINT “Оценки:”

FOR J=1 TO 3

PRINT P$(J);:INPUT O(I,J)

NEXT J

NEXT I

CLS: S1=0: S2=0: S3= 0

FOR I=1 TO N

SB= 0

FOR J=1 TO 3

SB=SB+O(I,J)

NEXT J

PRINT “Средний балл студента ”,F$(I),SB/3

S1=S1+O(I,1): S2=S2+O(I,2): S3=S3+O(I,3)

NEXT I

PRINT “Средняя оценка по предметам:”

PRINT P$(1),P$(2),P$(3)

PRINT S1/8,S2/8,S3/8

FOR I=1 TO 3

S1=0: S2=0: S3= 0

FOR J=1 TO N

IF O(J,I)=5 THEN S1=S1+1

IF O(J,I)=4 THEN S2=S2+1

IF O(J,I)=3 THEN S3=S3+1

NEXT J

PRINT P$(I),“5-“;S1,”4-“;S2,”3-“;S3

NEXT I

END

 

 

Задаем кол-во студентов

Объявление массивов

Задаем значения элементов Р$(3) и считываем их с помощью оператора READ.

 

 

 


Ввод оценок студентов

 

 

 

 

 

 

 

 


Подсчет суммы баллов студента

 

Вывод на экран среднего балла студента

 

Подсчет сумы баллов по предмету

 

 

 

Вывод на экран среднего балла по предмету

 

 

 

 

 


Подсчет числа оценок «5», «4», «3» по предметам и вывод на экран.

 

Пример 3. Изменить программу примера 2 таким образом, чтобы вывести на экран фамилию студента имеющего наименьший средний балл.

CLS

REM

INPUT “Количество студентов”;N

DIM F$(N),O(N,3),P$(3)

DATA “Математика ”, “Русский язык ”,“Информатика”

FOR I=1 TO 3: READ P$(I): NEXT I

FOR I=1 TO N

INPUT “Фамилия- ”;F$(I)

PRINT “Оценки:”

FOR J=1 TO 3

PRINT P$(J);:INPUT O(I,J)

NEXT J

NEXT I

CLS: MIN=5: K=0

FOR I=1 TO N

SB= 0

FOR J=1 TO 3

SB=SB+O(I,J)

NEXT J

IF SB<MIN THEN MIN=SB: K=I

NEXT I

PRINT “Наименьший средний балл имеет студент ”; F$(K)

END

2. Задания.

1. Внимательно изучите теоретический материал.

2. Запустите программу c:\QBasic\qbasic.exe.

3. Наберите программу, приведенную в примере 1. Сохраните созданный файл под именем pr43_1.bas в папку своей группы. Результаты выполнения программы занесите в таблицу.

4. Наберите программу, приведенную в примере 2. Результаты выполнения программы запишите в отчет. Сохраните созданный файл под именем pr43_2.bas в папку своей группы.

5. Измените программу примера 2 в соответствии с заданием в примере 3. Результаты выполнения программы запишите в отчет. Сохраните созданный файл под именем pr43_3.bas в папку своей группы.

6. Измените программу примера 3 таким образом, чтобы вывести на экран фамилию студента имеющего наибольший средний балл. Результаты выполнения программы запишите в отчет. Сохраните созданный файл под именем pr43_4.bas в папку своей группы.

3. Оформление отчета:

1. Переписать определение массива, типы массивов, назначение и правила использования оператора DIM, примеры 1, 2 и 3 программ из методического пособия в тетрадь.

2. Выполнить п.п. 2-6 задания.

3. Дать ответы на вопросы задания и объяснить их.

4. Контрольные вопросы.

1. Сколько элементов и какого типа содержат массивы: A$(20), B(10,10), N$(5,3) ?

2. Массив списка  25 студентов включает в себя такие данные: фамилия студента, дату рождения, адрес. Объявите массив для занесения всех данных в память компьютера.

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


Практическая работа № 42-43.

Практическая работа № 42-43.

Пример: оператор DIM D %(2),

Пример: оператор DIM D %(2),

Программа Пояснения

Программа Пояснения

FOR I=1 TO N INPUT “ Фамилия - ”;F$(I)

FOR I=1 TO N INPUT “ Фамилия - ”;F$(I)
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.
06.05.2020
Посмотрите также: