Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Ход выполнения
Практическая работа № 5 «Организация циклов. Цикл с постусловием while»
Задача. Печать таблицы значений функции.
Написать программу печати таблицы значений функции sin для аргумента, изменяющегося в заданных пределах с заданным шагом. Ход выполнения Открываем систему Lazarus. Далее Файл – Создать… - Приложение. Данное приложение необходимо сохранить в свою папку. Название проекта – ProSin, название модуля – UnitSin. Переименуйте созданную вами форму. Для этого перейдите в Свойства – Caption – введите «Таблица значений функции Sin». На открывшейся форме добавляем надпись типа TLabel (Панель Standard). В свойствах кнопки меняем её текст Свойства – Caption – «Введите начальное значение аргумента (Xn):». Измените размер шрифта – Font – Size – 12. Аналогичным образом создаём надписи: «Введите конечное значение аргумента (Xk):», «Шаг изменения аргумента (dX):».
После добавляем поле TEdit для ввода значений (Xn, Xk, dX): Панель Standard – TEdit. Далее применяем Свойства – Name – EditXn; Text – очистить. Аналогично создаём поля для: «Введите конечное значение аргумента (Xk):» (Name – EditRXk), «Шаг изменения аргумента (dX):»(Name – EditdX).
Добавляем кнопку: Панель Standard – TButton. Далее применяем Свойства – Caption – «Вычислить»; Измените имякнопки – Name – ButtonRes. Далее добавляем таблицу TStringGrid1 для вывода значений X и Y: Панель Additional – TstringGrid. После применяем к таблице следующие свойства:
После того, как были расположены все основные элементы на форму, приступаем к написанию кода. Создадим процедуру, для этого щелкните левой клавишей мыши по кнопке «Вычислить» 2 раза. Откроется окно кода, и автоматически создастся процедура: procedure TForm1.ButtonResClick(Sender: TObject); Для начала обозначим исходные данные и разместим их в разделе описания переменных: procedure TForm1.ButtonResClick(Sender: TObject); var Xn, Xk: real; dX: real; x, y: real; s1, s2: string; i: integer;
Далее описываем составной оператор begin.. end.
begin Xn: = StrToFloatDef(EditXn.text, 0); {перевод введённого символа в число; пустое значение обнуляется; присваивание числа к значению Xn}
Xk: = StrToFloatDef(EditXk.text, 0); dX: = StrToFloatDef(EditdX.text, 0);
x: = Xn; {первое значение аргумента = Xn}
i: = 0; while x < = Xk do begin { заголовок цикла } y: = sin(x); { вычисление значения функции }
s1: = FloatToStrF(x, ffFixed, 5, 2); { вывод строки X} StringGrid1.Cells [i, 0]: = s1;
s2: = FloatToStrF(y, ffFixed, 5, 2); {вывод строки Y} StringGrid1.Cells [i, 1]: = s2;
x: = x + dX; { переход к следующему значению аргумента } inc(i);
if (i> 15) then break; end;
end;
После написания кода, запустите Компиляцию программы . В результате у вас получится следующая форма вашей программы (Рис.1):
Рис. 1 – Готовая форма программы
|