Читайте также: |
|
Варианты задание упражнения 2.
Учитывая значения переменных, вычислить арифметическое выаржение по формуле согласно варианта. Алгоритм решения задачи представить в виде блок-схемы.
Группа А Таблица 2
вар.№ | Формула для вычисления | Переменные | вар.№ | Формула для вычисления | Переменные |
5 | |||||
Группа В Таблица 2
вар.№ | Формула для вычисления | Переменные |
5 | ||
2. Пример
Пример 2.1. вычислить арифметическое выражение, если переменные имеют следующие значения а =0,11 и х =-0,05.
Решение задачи: 1. Если в программе все операторы выполняются последовательно, один за другим, такая программа называется линейной. Рассмотрим в качестве примера программу, вычисляющую результат по заданной формуле.
Алгоритм решения задачи представлен на блок-схеме (Рисунок -1).
2. В связи с постановкой задачи объявляем переменные а, х и y (вещенственные - float), используя операторы ввода/вывода, присваивания пишем программу для консольного приложения.
В директиве препроцессора подключается заголовочный файл <stdio.h>, который содержит функции ввода–вывода стандартных объектов – потоков (scanf и printf). В данной программе используются функции ввода-вывода библиотеки С++, унаследованных из языка С. Вы можете выбирать для каждой программы наиболее подходящий способ ввода-вывода.
На рис.2 приведен текст программы консольного приложения.
|
3.Командой File®Save All сохранить файл (Pr_1 -имя файла, Рисунок-2). Для запуска приложения можно вопользоваться функциональной клавишей F9, или клавишей панели инструментов, а также командой меню Run ®Run. Открывается окно DOS, после ввода переменных выдается результат вычислений.
Лабораторная работа № 2
Тема лабораторной работы: знакомство со средой Си++Builder, линейные вычислительные процессы и простейшие типы
Цель работы: освоение простейшей структуры программы, изучение порядка действий при вычислении выражений; получение навыков построения простейших форм приложений по вводу-выводу данных.
Содержание работы
1. Составить блок-схему и написать программу решения задач согласно варианту.
2. Вывести на печать 5 вариантов исходных данных и результатов выполнения программы.
Знакомство с компонентами Label, Edit, Button, Memo вкладки Standard среды Си++Builder, и
спользование их в программе
1 Порядок выполнения лабораторной работы:
1.1 Изучить теоретический материал, соответствующий теме лабораторной работы.
1.2 Ответить на следующие вопросы:
1. из скольких разделов состоит программа, созданная в среде Си++Builder?
2. Что такое свойства компонента?
3. Какие свойства компонента Label использовали?
4. Какие свойства компонента Form использовали?
5. Какие свойства компонентов Edit, Button, Memo использовали?
6. Что такое событие, какие события использовали в программе?
7. Что такое методы компонентов?
8. Основные окна Си++Builder,назовите их особенности.
9. С помощью какой команды или функциональной клавиши вызывается на экран Инспектор объектов?
10. С помощью какой команды или функциональной клавиши производится только компиляция проекта?
11. С помощью какой команды или функциональной клавиши производится выполнение проекта по шагам?
12. Какое расширение у файла проекта Project?
13. Какова структура заголовочного файла?
14. Какова структура файла реализации?
15. Укажите правильное описание констант:
а) const min=0;
b) const min=0,5;
c) const min=0.5, max=10;
d) const int min =0;
e) const int min, max: =0;
f)const double Pi = 3.14159265;
а) 'А' < 'С'; б) '1' > '9'; в) FALSE < TRUE;
г) 'А' < 'B' & 1 < 2; д) '0'!= '9';
е) ('D' > 'G') AND (1 < 2).
а) i * i + g * g + 2 * k / 2; б) sin(x) + 2 * cos(x) + z;
в) x < y; г) i+sqrt(j).
а) x = y + sin(sin(z)); б) x = i + j - b;
в) a = (x < y) || b & (i<>k); г) i = i + k / j;
Если i,j,k - целые числа.
A = 2.5; B = 7.8; C = -17.3; M = 5; X = 8.7; E = TRUE;
а) (A+B) /C * M
б) 2 + X / (X + (A+B)/5)
в) (A<B) & (X + A<B) || (C<M) || E
Задание
Задание приведено таблице 2 и3 лабораторной работы №1. Для решения задачи в среде Си++Builder необходимо вначале ознакомиться с компонентами Label, Edit, Button, Memo вкладки Standard.
Пример
Пример 2.1 вычислить арифметическое выражение , если переменные имеют следующие значения а=2,3 и b=4.
Решение задачи: 1. Алгоритм решения задачи представляем на блок-схеме. Алгоритм - линейный (Рисунок-3).
2. На форму из палитры компонентов вкладки Standard среды Си++Builder установить следующие компоненты: три - Label, два - Edit, два – Button, задаем свойства (Рисунок-5. Обратите внимание на таблицы 3 и 4). Для компоненты Form1 установить BorderStyle – формат формы, Width – ширинуформы; Height - высоту. Для компонентов Label установить свойства Caption, Left, Top, для двух командных кнопок Button – всвойстве Caption отразить выполняемые действия. Поле Edit предназначено для ввода значений переменных, поэтому необходимо его свойство Text очистить. Для этих целей можно воспользоваться возможностями страницы Properties окна инспектора объектов (Object Inspector) Си++Builder. 7-м Рисунке Button1 компонентінің Свойстван тағайындау және оның оқиғасын таңдау сәті бейнеленген. Осы амалды басқа да компоненттердің Свойстван тағайындауға қолдану керек.
Свойствакомпонента Form1 Таблица 4
Компонент | Свойства | Значение |
Form1 | BorderStyle | bsSizeable |
Caption | Лабораторная_работа№2 | |
Width | ||
Height |
Свойствакомпонентов Label, Edit, Button Таблица 5
Компонент | Caption | Text | Left | Top |
Label1 | a | |||
Label2 | b | |||
Label3 | - | |||
Edit1 | - | |||
Edit2 | - | |||
Button1 | Вычислить | |||
Button2 | Очистить |
3. Для использования математических функций необходимо подключить файл math.h с помощью директивы препроцессора #include <math.h>.
4. Для вычисления выражения поставленной задачи вызываем событие OnClick компоненты Button1: имя метода состоит из имени компоненты и имени события Button1+Click=Button1Click
void __fastcall TForm1:: Button1Click(Sender: TObject);
5. Необходимо объявить переменные, согласно заданию: b - целое, a - вещественное, результат y – число вещественного типа: int b; double a,y;
6. Считывание данных:
a=StrToFloat(Edit1.Text); //перевод строкового типа данных в вещественные
b=StrToInt(Edit2.Text);
7. Принимая во внимание правило записи арифметических выражений, вычисляем значение переменной у:
y= pow(a,b)*sqrt(а*a+b*b)-3*abs(b);
8. Для вывода результатов вычислений, используем ствойство Caption компоненты Label3:
Label3->Caption=”Результат вычисления y= ”+FloatToStrF (y,ffFixed,5,2);
9. С помощью функциональной клавишы F12 или кнопки панели иснтрументов переходим с окна кода редактора программы на окно формы.
10. Теперь редактируем событие кнопки Button2:
void __fastcall TForm1:: Button2Click(Sender: TObject);
11. Для обновления данных в поле компоненты Edit необходимо с помощью функции Clear () очистить его:
Edit1->Clear(); Edit2->Clear();
12. Повторяем пункт 9.
13. При сохранении проекта с помощью команды File®Save Project As основного меню среда Си++Builder предлагает два диалоговых окна: Save Unit As – сохранение модуля; Save Project As – сохранение проекта. В обоих окнах в поле Имя файла необходимо ввести именамодуля и проекта.
14. С помощью функциональной клавиши F9 или кнопки панели инструментов произвести компиляцию проекта.
15. Ввести значения переменных в поле компонентов Edit1, Edit2 (Рисунок-5).
16. Текст программы:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include <math.h>
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{ double a,b,y;
a=StrToFloat(Edit1->Text); //Edit1 орісіне накты сан усыну
b=StrToInt(Edit2->Text); //Edit2 орісіне бyтін сан yсыну№
y= pow(a,b)+sqrt(a*a+b*b)-3*abs(b);
Label3->Caption="Результат вычисления Y= " + FloatToStrF(y,ffFixed,5,2);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Edit1->Clear();
Edit2->Clear();
}
//---------------------------------------------------------------------------
Пример 2.2 Используя компоненту Memo для вывода результатов вычислить выражение ,если а=23,6 b=4.
Решение задачи: Алгоритм решения задачи, подготовка формы, установка компонентов, назначение его свойств, объявление переменных аналогичны предыдущему примеру. Разница в том, что для вывода результатов вместо Label используется компнента Memo1.
Компонент Memo класса TMemo используется для ввода/вывода большого текста. Текст класса TStrings сохраняетсяс свойстве Lines. Для вывода результатов вычислений метод компоненты Memo1 записывается следующим образом:
Memo1->Lines->Add(“Результат вычисления:”);
Memo1->Lines->Add(”y = ”+FloatToStrF(y,ffGeneral,7,3));
Дата добавления: 2015-11-04; просмотров: 93 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Реалізація проекту в середовищі Borland Delphi | | | Лабораторная работа№ 3 |