Учебный курс Программирование на Delphi. Модуль 6
Учебный курс Программирование на 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.
- Форма с результатом работы программы:
Задание
| Номер варианта | Условие |
|---|---|
| Найти все трехзначные числа, равные сумме кубов своих цифр. | |
| Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2,3,4,5,6,7,8,9. | |
| Найти все трехзначные числа, сумма цифр которых равна данному целому числу. | |
| Найти все трехзначные числа, квадраты которых оканчиваются тремя одинаковыми цифрами, отличными от нуля. | |
| В магазине имеется мастика в ящиках по 16 кг, 17 кг и 21 кг. Получить 185 кг мастики без вскрытия ящиков. Рассмотреть все варианты. | |
| Представить в записи 42*4* вместо звездочек такие цифры, чтобы полученное пятизначное число делилось на 72. | |
| Найти все трехзначные числа кратные 7 и сумма цифр, которых тоже кратна 7. | |
| Найти четырехзначное число, которое при делении на 133 дает в остатке 125, а при делении на 134 дает в остатке 111. | |
| Решить арифметический ребус КИО*ИО= ТОКИО. Вместо каждой буквы необходимо поставить некоторую цифру, причем одинаковые буквы означают одинаковые цифры, а различные буквы - различные цифры. | |
| Сократить дробь, имеющую данные числитель а и знаменатель b. Предусмотреть выделение целой части в случае a > b. | |
| Определить сколько делителей и какие имеет данное натуральное число. | |
| Найти сумму делителей данного натурального числа. | |
| Найти все "пифагоровы" тройки натуральных чисел, наибольшее из которых не превосходит n (Тройка натуральных чисел называется пифагоровой, если сумма квадратов двух из них равна квадрату третьего). | |
| Найти все четырехзначные числа, у которых сумма первых двух цифр равна сумме двух последних. |
| Файл:Ф1.JPG | |
| Файл:Ф2.JPG | |
| Файл:Ф3.JPG | |
| Файл:Ф4.JPG | |
| Файл:Ф5.JPG | |
| Файл:Ф6.JPG | |
| Файл:Ф7.JPG | |
| Файл:Ф8.JPG | |
| Файл:Ф9.JPG | |
| Файл:Ф10.JPG | |
| Файл:Ф11.JPG | |
| Файл:Ф12.JPG | |
| Файл:Ф13.JPG | |
| Файл:Ф14.JPG |
Литература
- Архангельский. Программирование на Delphi 6. – М: БИНОМ, 2002
- Бобровский С. Delphi 7. Учебный курс. – СПб: Питер, 2003
- Культин Н. Основы программирования в Delphi 7. СПб: БХВ-Петербург, 2005.