Учебный курс Программирование на Delphi. Модуль 6: различия между версиями
(→Пример 1.) |
(→Задание) |
||
Строка 87: | Строка 87: | ||
Таблица 12 | Таблица 12 | ||
+ | {| border=1 | ||
+ | !Таблица №11 | ||
+ | |- | ||
+ | !Номер варианта||Условие | ||
+ | |- | ||
+ | |<center>1</center>|| Даны два вектора целых чисел А и В. Вычислить вектор С, который содержит нечетные элементы вектора А, которых нет в векторе В | ||
+ | |- | ||
+ | |||
+ | |<center>2</center>||Расположить элементы вектора в обратном порядке. Дополнительный массив не использовать. | ||
+ | |- | ||
+ | |<center>3</center>||Найти среднее арифметическое элементов массива X(n), исключив из них максимальное и минимальное значение. | ||
+ | |- | ||
+ | |<center>4</center>||Вектор B(n) заменить вектором, у которого элементы образуются делением вектора В на их сумму. | ||
+ | |- | ||
+ | |<center>5</center>||Заменить все элементы вектора X(m), стоящие до максимального, нулями. | ||
+ | |- | ||
+ | |<center>6</center>||В массиве R(k) найти минимальный элемент среди положительных и максимальный среди отрицательных. | ||
+ | |- | ||
+ | |<center>7</center>|| В массиве У(n) заменить все его элементы, стоящие после минимального, нулями. | ||
+ | |- | ||
+ | |<center>8</center>||Даны массив A(n) целого типа и целое число х. Произвести перестановку элементов массива так, чтобы в начале массива стояли элементы, значения которых меньше х, затем элементы, равные х, а следом элементы, значения которых больше х, в том порядке, в каком они стояли в массиве. | ||
+ | |- | ||
+ | |<center>9</center>||На плоскости на расстоянии s[1], s[2], ..., s[10] от центра кругового кольца с внутренним радиусом r и внешним R расположены точки. Определить количество точек, расположенных внутри кольца. | ||
+ | |- | ||
+ | |<center>10</center>||Дан вектор Х. Все его элементы не равные нулю, переписать (сохраняя их порядок) в начало массива, а нулевые элементы - в конец массива (новый массив не заводить). | ||
+ | |- | ||
+ | |<center>11</center>||Даны два вектора А и В. Сформировать вектор С, который содержит элементы, присутствующие в обоих массивах. | ||
+ | |- | ||
+ | |<center>12</center>||Имеется n окружностей с центром в начале координат и радиусами R[1], R[2], ..., R[n]. Определить номера окружностей между которыми находится точка с координатами (х, у). | ||
+ | |- | ||
+ | |<center>13</center>||В векторе X(n) поменять местами максимальный и последний элементы. | ||
+ | |- | ||
+ | |<center>14</center>||В векторе У(m) поменять местами максимальный и минимальный элементы. | ||
+ | |||
+ | |} | ||
==Литература== | ==Литература== |
Версия 14:29, 26 февраля 2008
Учебный курс Программирование на Delphi. Модуль 6
Содержание
Оператор for
Алгоритм называется циклическим, если он содержит многократное выполнение одних и тех же ветвей при различных значениях промежуточных данных.
Различают циклы с параметрами и циклы с условием. Для программирования циклов с параметром в Delphi используют оператор for.
Формат оператора:
for v := а1 to а2 do оператор;
v – переменная цикла – переменная порядкового типа,
a1- выражение, задающее начальное значение переменной цикла,
a2 - выражение, задающее конечное значение переменной цикла.
Оператор – оператор, выполнение которого будет повторяться (оператор тела цикла).
Если нужно сделать цикл по убыванию, то оператор for записывается в виде
for v: =a1 downto a2 do оператор;
Оператор работает так же, но шаг переменной цикла –1.
Пример 1.
- Условие:
Приписать к 523*** три такие цифры справа, чтобы полученное шестизначное число делилось на 7, на 8, на 9.
- Использованные компоненты:
BitBtn1,BitBtn2 - рабочие кнопки,
Label1 - вывод информации
- Программный код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons; type TForm1 = class(TForm) Label1: TLabel; BitBtn1: TBitBtn; BitBtn2: TBitBtn; procedure BitBtn2Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} var s,a,b,c,n: integer; procedure TForm1.BitBtn2Click(Sender: TObject); begin close; end; procedure TForm1.BitBtn1Click(Sender: TObject); begin for n:=0 to 999 do begin s:=523000+n; a:=s mod 7; b:=s mod 8; c:=s mod 9; if (a=0) and (b=0) and (c=0) then label1.Caption:='523..'+inttostr(n); end; end; end.
- Форма с результатом работы программы:
Задание
Таблица 11 <math>Вставляйте сюда формулу</math>
Таблица 12
Таблица №11 | |
---|---|
Номер варианта | Условие |
Даны два вектора целых чисел А и В. Вычислить вектор С, который содержит нечетные элементы вектора А, которых нет в векторе В | |
Расположить элементы вектора в обратном порядке. Дополнительный массив не использовать. | |
Найти среднее арифметическое элементов массива X(n), исключив из них максимальное и минимальное значение. | |
Вектор B(n) заменить вектором, у которого элементы образуются делением вектора В на их сумму. | |
Заменить все элементы вектора X(m), стоящие до максимального, нулями. | |
В массиве R(k) найти минимальный элемент среди положительных и максимальный среди отрицательных. | |
В массиве У(n) заменить все его элементы, стоящие после минимального, нулями. | |
Даны массив A(n) целого типа и целое число х. Произвести перестановку элементов массива так, чтобы в начале массива стояли элементы, значения которых меньше х, затем элементы, равные х, а следом элементы, значения которых больше х, в том порядке, в каком они стояли в массиве. | |
На плоскости на расстоянии s[1], s[2], ..., s[10] от центра кругового кольца с внутренним радиусом r и внешним R расположены точки. Определить количество точек, расположенных внутри кольца. | |
Дан вектор Х. Все его элементы не равные нулю, переписать (сохраняя их порядок) в начало массива, а нулевые элементы - в конец массива (новый массив не заводить). | |
Даны два вектора А и В. Сформировать вектор С, который содержит элементы, присутствующие в обоих массивах. | |
Имеется n окружностей с центром в начале координат и радиусами R[1], R[2], ..., R[n]. Определить номера окружностей между которыми находится точка с координатами (х, у). | |
В векторе X(n) поменять местами максимальный и последний элементы. | |
В векторе У(m) поменять местами максимальный и минимальный элементы. |
Литература
- Архангельский. Программирование на Delphi 6. – М: БИНОМ, 2002
- Бобровский С. Delphi 7. Учебный курс. – СПб: Питер, 2003
- Культин Н. Основы программирования в Delphi 7. СПб: БХВ-Петербург, 2005.