Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
Топ:
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Интересное:
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Влияние предпринимательской среды на эффективное функционирование предприятия: Предпринимательская среда – это совокупность внешних и внутренних факторов, оказывающих влияние на функционирование фирмы...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Реализуется с помощью оператора repeat. В этом случае условие проверяется после цикла, до тех пор, пока проверка указанного условия будет давать результат «ложь», т.е. пока условие не выполнено. Важно отметить, что если указанное условие сразу окажется истинным, то цикл все равно выполнится 1 раз. Для цикла с постусловием сначала выполняется тело цикла, а потом проверяется условие. Конструкция цикла:
Repeat
Тело цикла
until логическое выражение
Важно! Операторы begin…end здесь не требуются.
Метки
В большинстве случаев алгоритмы требуют организации программных переходов. В Паскаль требуется оператор безусловного перехода:
goto метка;
метка – произвольный идентификатор, позволяющий именовать определенный оператор в программе. После метки необходимо поставить двоеточие. Пример:
goto M2;
…
M2: write (D);
ЗАДАЧИ:
1. Определить количество учеников сдавших экзамен по предмету. Количество учеников ввести с клавиатуры.
2. Определить стоимость партии товара. Количество единиц товара и стоимость за единицу товара ввести с клавиатуры.
3. Найти все целые цифры в диапазоне от 100 до 999, сумма цифр которых больше произведения этих цифр.
4. Необходимо построить график функции y (N)=sin(0.2*N), где N – представляет собой последовательность целых чисел от 0 до 20. Для отметки каждой точки графика выбрать символ звездочку.
ПРИМЕЧАНИЕ! Одно деление на оси ординат (одно знакоместо) соответствует 0.1. Ось Х проходит параллельно левой границе экрана на расстоянии 20 символов.
Урок 5. Одномерные и двумерные массивы
Массив – это набор однотипных данных, упорядоченных по номеру (индексу).
Массивы относятся к составным (структурированным) типам данных. Массивы однородны, т.е. имеют одинаковый тип.
По количеству размерностей массивы разделяются на одномерные массивы (векторы), двумерные (матрицы) и многомерные.
По типу элементов массивы делятся на массивы простых типов данных (массив целых чисел, массив вещественных чисел и т.д.) и массивы структурированных типов данных (массив массивов, массив записей и т.д.)
Массив определяется именем, количеством размерностей и типом его элементов. Все элементы массива имеют одно имя. Добраться до конкретного элемента массива можно указав в квадратных скобках его индекс (порядковый номер). Элементы массива располагаются в подряд идущих ячейках памяти. Над элементами массива можно производить операции согласно их типу. Задавать значения массива можно с помощью оператора присваивания или оператора ввода. Элементы одного массива можно присваивать другому, если они совместимы по типу.
Одномерные массивы
Одномерный массив представляет собой последовательность данных записанных в строку, каждый элемент массива имеет 1 порядковый номер (индекс). На месте индекса может стоять константа, переменная, выражение.
Любой массив сначала надо объявить:
Var
имя массива:array[ тип индекса ]of тип элементов;
Например:
Var
А:array[1..10]of integer;
Для ввода и вывода, а также для обработки элементов массива используют цикл со счетчиком:
| For i:=1 to n do A[i]:=выражение; | For i:=1 to n do Read(A[i]); | For i:=1 to n do Write(A[i]); |
Запись A[2*i] означает, что будут рассмотрены четные элементы массива.
Запись A[2*i-1] означает, что будут рассмотрены нечетные элементы массива.
Двумерные массивы
Двумерный массив представляет собой таблицу из однотипных элементов, организованную по строкам и столбцам. Элемент такого массива записывается с 2-мя индексами, первый из которых – номер строки, второй – номер столбца.
Объявление массива:
Var
имя массива:array[ тип индекса строки, тип индекса столбца ]of тип элементов;
Например:
Var
А:array[1..10,1..10]of integer;
Для ввода и вывода, а также для обработки элементов массива используют 2 цикла со счетчиком:
| For i:=1 to n do For j:=1 to m do A[i,j]:=выражение; | For i:=1 to n do For j:=1 to m do Read(A[i,j]); | For i:=1 to n do For j:=1 to m do Write(A[i,j]); |
ПРИМЕЧАНИЯ!
1. Массив можно заполнить случайными числами (функцией random(N)).
2. Подсчет суммы элементов массива выполняется по формуле: S=S+A[i]
3. Поиск максимального элемента выполняется по алгоритму:
· в некоторую переменную N записывается значение 1 элемента массива
· в цикле (от второго элемента) проверяем: если значение элемента массива больше N, то переписываем это значение в переменную N
4. Формула для заполнения массива: A[i]:=A[i-1]+A[i-2] называется итерационной, а числа – «числами Фибоначчи», означает, что каждый элемент массива равен сумме двух предыдущих.
5. Инвертирование элементов массива выполняется по алгоритму в цикле:
· некоторой переменной N присваивается значение первого элемента массива
· первому элементу массива присваивается значение последнего элемента массива
· последнему элементу массива присваивается значение N
6. Для квадратной матрицы (количество строк = количеству столбцов) справедливо следующее:
· для индексов элементов, стоящих на главной диагонали: i=j
· для индексов элементов, стоящих на побочной диагонали: i+j = n+1 (n – количество строк или столбцов)
· для индексов элементов, стоящих выше главной диагонали: i<j
· для индексов элементов, стоящих ниже главной диагонали: i>j
ЗАДАЧИ (ОДНОМЕРНЫЕ МАССИВЫ):
1. Значения элементов массива F[1..10] задаются с помощью следующего фрагмента программы:
F[1]:=1; F[2]:=1;
For i:=3 to 10 do
F[i]:=F[i-1]+F[i-2];
Какое значение будет иметь элемент массива F[9]?
2. Значения элементов массива A[1..10] задаются с помощью следующего фрагмента программы:
p:=1;
For i:=1 to 5 do
begin
A[2*i-1]:=i;
A[2*i]:=p;
p:=p*2
end.
Какое значение будет иметь элемент массива A[4], A[9]?
3. В программе используется одномерный целочисленный массив А с индексами от 1 до 10. Чему будут равны элементы массива после выполнения фрагмента программы:
For i:=1 to 10 do
A[i]:=i*5;
For i:=1 to 5 do
Begin
p:=A[i];
A[i]:=A[11-i];
A[11-i]:=p
End;
4. В программе используется одномерный целочисленный массив А с индексами от 1 до 10. Чему будут равны элементы массива после выполнения фрагмента программы:
For i:=1 to 10 do
A[i]:=2*i-1;
p:=A[10];
For i:=10 downto 2 do
A[i]:=A[i-1];
A[1]:=p;
5. Значения двух массивов A[1..10], B[1..10] задаются с помощью фрагмента программы. Сколько элементов массива будут иметь отрицательные значения?
p:=12;
For i:=1 to 10 do
Begin
A[i]:=p;
p:=p-2;
end; k:=1;
For i:=1 to 10 do
begin
B[i]:=A[i]*k;
k:=-k;
end;
6. Объявить целочисленный массив из 20 элементов. Заполнить массив случайными числами в интервале от 0 до 99. Вывести исходный массив на экран. Посчитать и вывести на экран сумму элементов данного массива.
7. Объявить целочисленный массив из 5 элементов. Заполнить его с клавиатуры. Найти сумму всех элементов массива, которые больше 9.
8. Объявить целочисленный массив из 10 элементов. Заполнить массив случайными числами в интервале от 0 до 20. Вывести исходный массив на экран. Посчитать и вывести на экран среднее арифметическое значение элементов данного массива.
9. Объявить целочисленный массив из 10 элементов. Заполнить массив случайными числами в интервале от 0 до 50. Вывести исходный массив на экран. Посчитать и вывести на экран максимальное значение элементов данного массива и порядковый номер этого элемента в массиве.
10.Объявить целочисленный массив из 10 элементов. Заполнить массив случайными числами в интервале от 0 до 50. Вывести исходный массив на экран. Вывести на экран инвертированный массив, в котором элементы будут поменяны местами: первый элемент меняется значением с последним, второй с предпоследним и т.д.
|
|
|
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!