Первый урок первая программа 8 Сохранение и запуск проекта на выполнение 11 Сохранение проекта 11

Вид материалаУрок

Содержание


Вопросы для самоконтроля
Девятый урок – цикл с постусловием (Repeat … Until)
Repeat и Until
Контрольный пример
Вопросы для самоконтроля
Приложения Приложение № 1 Некоторые параметры объектов и их использование
WordWrap (когда AutoSize true)
Приложение № 2 Математические операции и некоторые функции в Pascal-е и Delphi
Приложение № 3 Стандартные математические функции Object Pascal
Тип параметра
Приложение № 4 Типы числовых данных в Pascal-е и Delphi
Диапазон значений
Вещественные типы
Подобный материал:
1   2   3   4   5   6   7   8   9

Вопросы для самоконтроля




  1. Какую новую конструкцию языка Pascal Вы узнали?
  2. Почему тип переменных a и b целочисленный?
  3. Какие переменные и для чего используются в процедуре?
  4. Зачем переменную n перед использованием обнулили (n := 0;)?
  5. Как и где ещё можно объявить переменные, встречающиеся в процедуре?
  6. Зачем в цикле были использованы ключевые слова: begin, end?
  7. Почему в Label7 использовали переменную a, а не b?
  8. Что представляет собой в математическом смысле результат выполнения цикла?
  9. Для чего использовались функции strtoint и inttostr?

Девятый урок – цикл с постусловием (Repeat … Until)


Познакомимся с новой конструкцией – цикл с постусловием:

Repeat <1> Until <2>;

1 – операторы;

2 – логическое выражение (условие);

 – после выполнения тела цикла происходит проверка условия выхода. Выход по верному условию.

 – ключевые слова Repeat и Until являются операторными скобками, поэтому между ними можно вставить более одного оператора;

 – в теле цикла обязательно должно произойти событие, которое сделает логическое выражение верным.


Пусть надо решить следующую задачу:

Денис после изучения темы циклы заинтересовался, как для натурального числа N с помощью компьютера получить другое число, записанное в обратном порядке. А вы сможете это сделать?

Контрольный пример:

Введено число 12023, новое число 32021.

Пусть наша форма будет иметь следующий вид:



Вывод результата осуществим не в Label, а в Edit.

Объявим переменные как глобальные:

var

Form1: TForm1;

a, b, x : int64; // самый большой целочисленный тип

implementation


Код процедуры Click для кнопки получить новое число. Кнопка из вкладки Additional – цвет надписи на кнопке можно изменить.


procedure TForm1.BitBtn1Click(Sender: TObject);

begin

a := StrToInt64(Edit1.Text);

x := a;

b := 0;

repeat

b := b * 10 + x mod 10; // 1

x := x div 10; // 2

until x = 0; // 3

Edit2.Text := IntToStr(b); // тип int64 максимальный в функции

end;

Вопросы для самоконтроля




  1. Какую новую конструкцию языка Pascal Вы узнали?
  2. Почему тип переменных a и b int64?
  3. Какие переменные и для чего используются в процедуре?
  4. Зачем переменную b перед использованием обнулили (b := 0;)?
  5. Без какой переменной можно было обойтись в программе, у какой переменной в этом случае теряется начальное значение?
  6. Почему операторы между Repeat и Until не заключили в операторные скобки Begin … end?
  7. Объясните, что выполняет команда с комментарием:
    1, 2 и 3?
  8. Какой тип данных находится в параметре Text компонента Edit?
  9. Когда происходит выполнение процедуры Click?
  10. Переделайте алгоритм с цикла Repeat … Until на While … do.

Приложения

Приложение № 1
Некоторые параметры объектов и их использование



Align

Выравнивание объекта к контейнеру

Alignment

Выравнивание текста: taCenter – по центру, taLeftJustify – по левой границе, taRightJustify – по правой границе

AutoSize

Настройка размера по данным

Caption

Надпись, заголовок

Color

Цвет фона объекта

Cursor

Вид курсора на объекте

ClientHeight

Высота объекта в пикселях (аналог Height)

ClientWidth

Ширина объекта в пикселях (аналог Width)

Enabled

Доступен ли объект (значения true, false)

Font

Color

Height

Name

Size

Style

Параметры шрифта (фонта), шелчёк на - вызов диал. окна

цвет

высота

название (гарнитура)

размер (в пунктах)

стиль – начертание

Hint

Текст подсказки для объекта (без ShowHint не работает)

Icon

Замена стандартной иконки

Layout

Выравнивание текста по высоте, когда AutoSize равен true:

tlBottom – по нижней границе

tlCenter – по центру

tlTop – по верхней границе

Left

Отступ от левой границы в пикселях (окна, формы, контейнера)

Name

Название объекта – лучше не менять стандартные, иначе правила идентификатора

ShowHint

Параметры показа подсказки объекта (значения true – показать, false – не показывать)

Stretch

Растягивает картинку по размерам области вставки (значения: true, false)

Picture

Вставка рисунка

Transparent

Прозрачность фона (значения: true, false)

Top

Отступ от верхней границы в пикселях (окна, формы, контейнера)

Visible

Видимый объект или нет (значения: true, false)

Width

Ширина объекта в пикселях

WordWrap (когда AutoSize true)

Отображение текста в несколько строк (значения: true, false), например, для label (метки), кнопки (button) и т.д.



Приложение № 2
Математические операции и некоторые функции
в Pascal-е и Delphi


порядок

математика




Delphi

пример

1

Возведение в степень




Отсутствует

См. замечания

2

Умножение

Х

*

2 * 56 → 112




Деление

:

/

134 / 4 → 33,5




Целочисленное деление




Div

17 div 3 → 5




Остаток от целочисленного деления




Mod

17 mod 3 → 2

3

Сложение

+

+

17 + 8 → 25




Вычитание





36,7 – 9,4 → 27,3

4

Операции сравнения




>




>







=




=







<




<












<>












<=












>=






Приложение № 3
Стандартные математические функции Object Pascal




Обращение


Тип параметра

Тип результата

Примечание

abs(x)

Real, Integer

Тип аргумента

Модуль аргумента

ArcTan(x)

Real

Real

Аргтангенс (значение в радианах)

cos(x)

Real

Real

Косинус, угол в радианах

exp(x)

Real

Real

Экспонента

frac(x)

Real

Real

Дробная часть

int(x)

Real

Real

Целая часть числа

ln(x)

Real

Real

Логарифм натуральный

pi

-

Real

= 3б141592653 …

Random

-

Real

Псевдослучайное число, равномерно распределенное в диапазоне 0 … [1]

Random(x)

Integer

Integer

Псевдослучайное число, равномерно распределенное в диапазоне 0 … (x-1)

Randomize

-

-

Инициация генератора псевдослучайных чисел

sin(x)

Real

Real

Синус, угол в радианах

sqr(x)

Real

Real

Квадрат аргумента

sqrt(x)

Real

Real

Корень квадратный

В этой таблице Real означает любой вещественный тип, Integer – любой целый тип.



Приложение № 4
Типы числовых данных в Pascal-е и Delphi

Целые типы


Название

Длинна, байт

Диапазон значений

Byte

1

0 … 255

ShotInt

1

-128 … +127

SmallInt

2

-32 768 … +32 767

Word

2

0 … 65 535

Integer

4

-2 147 483 648 … +2 147 483 647

LongInt

4

-2 147 483 648 … +2 147 483 647

LongWord

4

0…4 294 967 295

Int64

8

-9*1018 … +9*1018

Cardinal

4

0… 2 147 483 647



Вещественные типы


Название

Длина, байт

Количество значащих цифр

Диапазон значений

Real

8

15 … 16

5,0*10-324 … 1,7*10308

Single

4

7 … 8

1,5*10-45 … 3,4*1038

Double

8

15 … 16

5,0*10-324 … 1,7*10308

Extended

10

19 … 20

3,4*10-4951 … 1,1*104932

Comp

8

19 … 20

-263 … +263 - 1

Currency

8

19 … 20

±922 337 203 685 477, 5807



Приложение № 5 Стандартные конструкции языка Pascal





1 В Англии точка разделитель целой и дробной частей, а США в своё время была колонией Англии, поэтому там используется английская система записи вещественного числа.