Программирование циклических алгоритмов




Цель работы: научиться программировать циклический алгоритм.

 

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

Оператор цикла For применяется для циклических вычислений и позволяет повторять группу операторов несколько раз.

Синтаксис оператора For:

For<счётчик_цикла> =<начало> TO <конец> [step шаг]

Тело цикла

Next [счётчик_цикла]

Счётчик_цикла – числовая переменная, равная в начале цикла значению начало и в конце цикла значению конец. Шаг по умолчанию равен 1, но может принимать и другие значения. Шаг не обязателен. Тело цикла — это группа операторов, которая должна выполняться несколько раз. Цикл завершается, когда впервые выполнится условие: счетчик_цикла> конец

 

3.2 Постановка задачи

1. Составить программу для нахождения суммы или произведения элементов массива, используя операторы цикла for (таблица 3.1).

2. Составить блок-схему программы, согласно своего варианта.

 

3.3 Решение типового примера

Вычислить значение функции:

,

где n=1,2,…,6.

Решение:

1. Заполнить диапазон ячеек А1:А6 значениями Х.

2. Вызвать редактор VBA.

3. Выполнить команду Вставка/Модуль.

4. Набрать текст программы

Subqwe()

Y=0

N=6

X=Worksheets(1).Cells(i,1)

Y=Y+log(x/(2^i))

Next i

Worksheets(1).Range(“A7”).Value=”Ответ”

Worksheets(1).Range(“A8”).Value=Y

End Sub

5. Запустить программу.

6. Проанализировать полученный результат.

 


 

3.4 Блок-схема программы

Блок-схема программы представлена на рисунке 3.1.

 

 
 

 

 


Рисунок 3.1 – Блок-схема алгоритма

3.5 Варианты заданий

Варианты заданий представлены в таблице 3.1.

Таблица 3.1 – Варианты заданий

 

№ варианта Вид функции
 
   
Продолжение таблицы 3.1
   
 
 
 
 
 
 
 
 
 
     
Продолжение таблицы 3.1
   
 
 
 
 
 
 
 
 
 
     
Продолжение таблицы 3.1
   
 
 
 
 
 
 
 
 

 

 

4. Лабораторная работа №4

Двумерные массивы

Цель работы: научиться программировать вложенные циклы.

 

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

Двумерные массивы описываются следующим образом:

Dim <имя массива>(<начальное значение индекса по строкам> To <конечное значение индекса по строкам >,< начальное значение индекса по столбцам> To < конечное значение индекса по столбцам>) As <тип элементов массива>

Пример описания двумерного массива:

DimB(1 To 5, 1 to 7) AsDouble ‘массив состоит из 35 элементов (5 строк и 7 столбцов), тип каждого элемента - Double.

Чтобы обратиться к элементу массива, необходимо указать имя массива, в круглых скобках через запятую указывается номер строки и номер столбца, где размещен элемент в массиве. Например, B(2,4)=12. Элементу, находящемуся во второй строке и четвертом столбце массива В присваивается значение 12.

Массивы можно вводить с листа Excel.

For i=1 to 5

For j=1 to 7

C(i,j)=Worksheets(1).Cells(i,j)

Nexti

Nextj

На блок-схемах вложенные циклы изображаются как показано на рисунке 4.1.

 
 


 

Рисунок 4.1 – Изображение вложенных циклов на блок-схемах

 

4.2 Постановка задачи

1. Написать программу с вложенными циклами согласно своему варианту.

2. Составить блок-схему.


 

4.3 Решение типового примера

Дан массив 10 строк, 4 столбца. Посчитать сумму элементов массива.

Текст программы представлен на рисунке 4.2.

 

Рисунок 4.2 – Текст программы


 

4.4 Варианты заданий

Варианты заданий представлены в таблице 4.2.

Таблица 4.1 – Варианты заданий

№ варианта Задание
   
  В матрице А[4,6] посчитать количество нулевых элементов. Еслитаких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[3,5] посчитать количество положительных элементов. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[4,5] посчитать количество отрицательных элементов. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[6,4] найти сумму отрицательных элементов. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[5,4] найти произведение положительных элементов. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[3,6] найти сумму положительных элементов. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[5,6] найти произведение отрицательных элементов. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[4,8] найти сумму положительных элементов во всех четных столбцах. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[3,9] найти сумму положительных элементов во всех нечетных столбцах. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[3,8] найти произведение положительных элементов во всех четных столбцах. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[4,9] найти произведение отрицательных элементов во всех нечетных столбцах. Если таких элементов нет, то на печать выдать соответствующее сообщение.    
Продолжение таблицы 4.1
   
  В матрице А[8,4] найти сумму положительных элементов во всех четных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[9,4] найти сумму отрицательных элементов во всех нечетных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[8,3] найти сумму положительных элементов во всех нечетных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[9,5] найти сумму отрицательных элементов во всех четных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[10,3] найти произведение положительных элементов во всех четных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[9,5] найти произведение отрицательных элементов во всех нечетных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[9,6] найти произведение положительных элементов во всех нечетных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[8,5] найти произведение отрицательных элементов во всех четных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[6,8] найти сумму элементов значения которых больше первого элемента матрицы. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[7,6] найти сумму элементов значения которых меньше первого элемента матрицы. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[6,7] найти сумму элементов значения которых больше последнего элемента матрицы. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[7,8] найти произведение элементов значения которых меньше последнего элемента матрицы. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[7,9] найти количество положительных элементов в четных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.  
Продолжение таблицы 4.1
   
  В матрице А[9,6] найти количество положительных элементов в нечетных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[7,8] найти количество нулевых элементов в четных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[8,7] найти количество нулевых элементов в нечетных строках. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[6,9] найти количество нулевых элементов в нечетных столбцах. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[6,7] найти количество нулевых элементов в четных столбцах. Если таких элементов нет, то на печать выдать соответствующее сообщение.
  В матрице А[8,9] найти количество элементов значения которых больше суммы первого и последнего элементов матрицы. Если таких элементов нет, то на печать выдать соответствующее сообщение.

 


 

СПИСОК ЛИТЕРАТУРЫ

 

1. Исакова А.И. Информационные технологии [Электронный ресурс]: учебное пособие/ Исакова А.И., Исаков М.Н.— Электрон.текстовые данные.— Томск: Эль Контент, Томский государственный университет систем управления и радиоэлектроники, 2012.— 174 c.— Режим доступа: https://www.iprbookshop.ru/13938— ЭБС «IPRbooks», по паролю.

2. Прохорова О.В. Информатика [Электронный ресурс]: учебник/ Прохорова О.В.— Электрон.текстовые данные.— Самара: Самарский государственный архитектурно-строительный университет, ЭБС АСВ, 2013.— 106 c.— Режим доступа: https://www.iprbookshop.ru/20465.— ЭБС «IPRbooks», по паролю.

4. Шереметьев, А.И. Информатика [Электронный ресурс]: учебное пособие / А. И. Шереметьев. - Москва: НИЯУ МИФИ.Ч.1: Элементы программирования на языке Cu. - [Б. м.], 2011. – Режим доступа: https://library.mephi.ru/Data-IRBIS/book-mephi/Sheremetev_Informatika_ch1_2011.pdf

3. Информатика. Базовый курс [Текст]: учеб. пособие для втузов / под ред. С.В. Симоновича. - 2-е изд. - СПб.: Питер, 2007. - 640 с.: ил. - (Учебник для вузов).

4. Симонович, С.В. Общая информатика. Новое издание [Текст] / С. В. Симонович. - СПб. [и др.]: Питер, 2008. - 428 с.: ил

5. Степанов, А.Н Информатика [Текст]: учеб.для вузов / А. Н. Степанов. - 5-е изд. - СПб. [и др.]: Питер, 2007. - 765 с.: ил. - (Учебник для вузов).

6. Выжигин А.Ю. Информатика и программирование [Электронный ресурс]: учебное пособие / Выжигин А.Ю. – Электрон.текстовые данные. – М.: Московский гуманитарный университет, 2012. – 294 с. – Режим доступа: https://www.iprbookshop.ru/14517. — ЭБС «IPRbooks», по паролю.


 


 

Разработано УМО (Учебно-методическим отделом) ВИТИ НИЯУ МИФИ

Утверждено

Подписано в печать

Отпечатано ИПО (Издательско-полиграфическим отделом) ВИТИ НИЯУ МИФИ

 

Тираж 50 экз.

 

347360, Россия, Ростовской обл. г. Волгодонск, ул. 50 лет СССР, д.79/91, Национальный исследовательский ядерный университет «МИФИ»

Волгодонский инженерно-технический институт-филиал НИЯУ МИФИ

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2018-01-08 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: