Учебный курс Программирование на 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

Программирование на Delphi циклов с параметром

Оператор 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.


  • Форма с результатом работы программы:

-3-1.JPG

Задание

Таблица 11 <math>Вставляйте сюда формулу</math>

Таблица 12

Таблица №11
Номер варианта Условие
1
Даны два вектора целых чисел А и В. Вычислить вектор С, который содержит нечетные элементы вектора А, которых нет в векторе В
2
Расположить элементы вектора в обратном порядке. Дополнительный массив не использовать.
3
Найти среднее арифметическое элементов массива X(n), исключив из них максимальное и минимальное значение.
4
Вектор B(n) заменить вектором, у которого элементы образуются делением вектора В на их сумму.
5
Заменить все элементы вектора X(m), стоящие до максимального, нулями.
6
В массиве R(k) найти минимальный элемент среди положительных и максимальный среди отрицательных.
7
В массиве У(n) заменить все его элементы, стоящие после минимального, нулями.
8
Даны массив A(n) целого типа и целое число х. Произвести перестановку элементов массива так, чтобы в начале массива стояли элементы, значения которых меньше х, затем элементы, равные х, а следом элементы, значения которых больше х, в том порядке, в каком они стояли в массиве.
9
На плоскости на расстоянии s[1], s[2], ..., s[10] от центра кругового кольца с внутренним радиусом r и внешним R расположены точки. Определить количество точек, расположенных внутри кольца.
10
Дан вектор Х. Все его элементы не равные нулю, переписать (сохраняя их порядок) в начало массива, а нулевые элементы - в конец массива (новый массив не заводить).
11
Даны два вектора А и В. Сформировать вектор С, который содержит элементы, присутствующие в обоих массивах.
12
Имеется n окружностей с центром в начале координат и радиусами R[1], R[2], ..., R[n]. Определить номера окружностей между которыми находится точка с координатами (х, у).
13
В векторе X(n) поменять местами максимальный и последний элементы.
14
В векторе У(m) поменять местами максимальный и минимальный элементы.

Литература

  1. Архангельский. Программирование на Delphi 6. – М: БИНОМ, 2002
  2. Бобровский С. Delphi 7. Учебный курс. – СПб: Питер, 2003
  3. Культин Н. Основы программирования в Delphi 7. СПб: БХВ-Петербург, 2005.


Ссылки

Учебный курс Программирование на Delphi

Учебный план курса Программирование на Delphi