- •Оглавление
- •§1. Первое знакомство с системой программирования Турбо Паскаль
- •§2. Основные элементы языка
- •§3. Команды редактора Команды управления движением курсора
- •§4. Первая программа
- •Пояснения к программе
- •Запуск программы
- •Сохранение программы
- •§5. Управление позициями и цветом вывода
- •§6. Арифметический квадрат.Абсолютная величина
- •§7. Типы данных
- •§8. Целый тип данных
- •Пример 6
- •Пример 7
- •Пример 8
- •§9. Вещественный тип данных
- •Пример 7
- •Пример 8
- •§10. Логический тип данных
- •§11. Условный оператор
- •Пример 1
- •Пример 2
- •Решение
- •§12. Оператор безусловного перехода. Раздел описания меток
- •§13. Вложенные условные операторы
- •Решение
- •Задание
- •Решение задач Задача 1
- •Задача 8
- •Задача 9
- •Задача 10
- •§14. Цикл с параметром
- •Пример 1
- •Пример 2
- •Пример 3
- •§15. Работа с окнами. Метод пошагового выполнения программ
- •§16. Решение задач с использованием цикла с параметром Задача 1
- •Решение
- •Задача 2.
- •§17. Цикл с предусловием
- •Оператор цикла с предусловием
- •Пример 1
- •Решение
- •Пример 2
- •Решение
- •Пример 3
- •Решение
- •§18. Цикл с постусловием
- •Пример 1
- •Решение
- •Пример 2
- •§19. Алгоритм Евклида
- •§20. Вложенные циклы Пример 1
- •Решение
- •Пример 2
- •Решение
- •Пример 3
- •Решение
- •Пример 4
- •Решение
- •Пример 5
- •§21. Решение задач с использованием циклов с условием Задача 1
- •Решение
- •Задача 2
- •§22. Символьный тип данных
- •Пример 1
- •Решение
- •Пример 2
- •Решение
- •§23. Ограниченный тип данных
- •Var b:3..8; а не просто Vаг b:Integer;
- •Решение
- •§24. Оператор варианта (выбора)
- •Пример 1
- •Решение
- •Пример 2
- •Решение
- •Пример 3
- •Решение
- •Пример 4
- •§25. Перечисляемый тип данных
- •§26. Описание переменных, констант и типов. Раздел описания констант
- •Раздел описания типов
- •§27. Преобразование типов. Совместимость типов
- •Пример 1
- •Решение
- •Пример 2
- •Решение
- •Пример 3
- •Решение.
- •§28. Процедуры
- •Описание процедуры
- •Решение
- •Begin {основная программа}
- •Пример 2
- •Решение
- •Пример 3
- •§29. Функции
- •Пример 1
- •Пример 2
- •Решение
- •Пример 3
- •Решение
- •§30. Примеры рекурсивного программирования
- •Задачи с рекурсивной формулировкой
- •Пример 3
- •Задачи, которые можно решить как частный случай обобщенной
- •Задание
- •Задачи, в которых можно использовать характеристику или свойство функции Пример
- •Решение
- •§31. Файловый тип данных Операции для работы с файлами последовательного доступа
- •§32. Обработка файлов Связь переменной файлового типа с файлом на диске
- •Чтение из файла
- •Закрытие файла
- •Признак конца файла
- •Запись в файл
- •§33. Прямой доступ к элементам файла
- •Удаление файлов. Процедура
- •Переименование файлов. Процедура
- •Пример 2
- •§34. Текстовые файлы
- •Обработка текстовых файлов
- •Пример 1
- •Решение
- •Пример 2
- •Нетипизированные файлы
- •§35. Одномерные массивы. Работа с элементами(разбор на примерах) Пример 1
- •Решение
- •Пример 2
- •Решение
- •Пример 3
- •Решение
- •Begin {Считываем очередную строку}
- •§36. Работа с элементами массива (разбор на примерах)
- •Пример 2
- •§37. Методы работы с элементами одномерного массива
- •Создание массива
- •Пример 1
- •Решение
- •Пример 2
- •Решение
- •Работа с несколькими массивами Пример
- •Решение
- •§38. Удаление элементов из одномерного массива Пример 1
- •Решение
- •Begin {Сдвиг элементов на один влево}
- •Пример 2
- •Решение
- •§39. Вставка элементов в одномерный массив
- •Вставка нескольких элементов
- •Решение
- •§40. Перестановки элементов массива
- •§41. Двухмерные массивы Описание. Работа с элементами
- •§42. Найти сумму элементов
- •Решение
- •§43.Нахождение количества элементов с данным свойством
- •Пример 1
- •Решение
- •Пример 2
- •Решение
- •§44. Работа с несколькими массивами Пример
- •Решение
- •§45. Определить, отвечает ли заданный массив некоторым требованиям Пример 1
- •Решение
- •Пример 2
- •Решение
- •§46. Изменение значений некоторых элементов, обладающих заданным
- •§47. Заполнение двухмерного массива по правилу
- •Пример 2
- •Решение
- •§48. Вставка и удаление элементов Вставка строки
- •Решение
- •Примечания
- •Удаление строки Пример
- •Решение
- •Примечания
- •§49. Перестановка элементов массива Перестановка двух элементов Пример 1
- •Решение
- •Пример 2
- •§50. Строковый тип данных
- •Операции со строками
- •Склеивание
- •Сравнение
- •Примеры
- •Пример 8
- •Пример 9
- •Пример 10
- •§51. Множественный тип данных
- •Операции над множествами
- •Примеры
- •Сравнение множеств
- •Пример 1
- •Пример 2
- •Вопросы для обсуждения
- •Пример 3
- •Вопросы для обсуждения
- •Пример 4
- •Решение
- •Пример 5
- •Решение
- •§52. Комбинированный тип данных (записи)
- •Пример 1
- •Пример 2
- •Пример 3
- •Решение
§35. Одномерные массивы. Работа с элементами(разбор на примерах) Пример 1
Найти сумму пяти целых чисел.
Решение
Для решения этой задачи можно описать пять целых переменных для данных чисел и еще одну − для их суммы. Обозначим исходные числа а1, а2, а3, а4 и а5, а их сумму s. Тогда можно составить такую программу, используя функцию нахождения суммы пяти чисел:
Program Example_87;
Var а1, а2, аЗ, а4, а5, s: Integers;
Function Sum(х1, х2, хЗ, х4, х5: Integer):
Integer;
Begin
Sum:=x1+x2+x3+x4+x5;
End;
Begin
Writeln('Введите пять целых чисел');
Readln(а1, а2, а3, а4, а5);
{Вводим пять целых чисел}
s:=Sum (a1,а2, аЗ, а4,а5);
{Находим их сумму}
Writeln('их сумма равна ', s);
{Выводим результат на экран}
Readln;
End.
Пример 2
Найти сумму тридцати целых чисел.
Решение
Если решать эту задачу по аналогии с предыдущей, то необходимо будет описать 30 переменных для всех исходных чисел. Это не очень удобно. Поэтому используем для решения этой задачи одномерный массив.
Одномерный массив это фиксированное количество элементов одного типа, объединенных одним именем, причем каждый элемент имеет свой уникальный номер и номера элементов идут подряд. Например, введем 30 целых чисел от 25 до 54 и объединим их общим именем А.
№ |
1 |
2 |
3 |
… |
29 |
30 |
А |
25 |
26 |
27 |
… |
53 |
54 |
Имя А общее для всех элементов. Элементы массива целые числа, их 30.
Опишем в разделе описания тип − одномерный массив, состоящий из 30 целых чисел.
Type myarray = Array[1..30] Of Integer;
Напомним, что раздел типов начинается со служебного слова Type, после него идут имя нового типа и его описание. Между именем типа и его описанием ставится знак "равно" (в разделе описания переменных между именем переменной и ее описанием ставится двоеточие). Тогда:
myarray это имя нового типа;
Array служебное слово (в переводе с английского означает "массив", "набор");
[1..30] в квадратных скобках указывается номер первого элемента, затем, после двух точек, номер последнего элемента массива; в этом примере первый элемент имеет номер 1, а последний номер 30;
Of служебное слово (в переводе с английского означает "из");
Integer тип всех элементов массива.
Таким образом, одномерный массив описывается следующим образом:
Array[n1..n2] Of <тип элементов>;
где n1 номер первого элемента, n2 номер последнего элемента, в качестве типа элементов может использоваться любой тип данных, кроме файлового.
Для того чтобы обратиться к элементу этого массива, необходимо указать имя массива и в квадратных скобках номер элемента. Например, первый элемент массива А А[1], а пятый А[5] .
Program Example_88;
Const n=30; {Количество элементов массива}
Var A: array[1..n] Of Integer;
i,sum: Integer;
Begin
Writeln('Введите ', n, ' чисел');
For i:=1 To n Do
{Ввод массива с клавиатуры}
Readln(a[i]);
{Чтение i-гo элемента}
For i:=1 To n Do {Вывод массива}
Write(a[i]: 3);
{Вывод i-гo элемента}
sum:=0; {Начальное значение суммы}
For i:=1 To n Do sum:=sum+a[i];
{К уже найденной сумме прибавляем
i-й элемент}
Writeln('их сумма равна ',sum);
Readln;
End.