Автор работы: Пользователь скрыл имя, 18 Июня 2013 в 10:24, отчет по практике
Изучить правила составления текстов программ, научиться реализовывать линейные алгоритмы, а также написать и отладить программу линейного алгоритма в консольном и(или) оконном приложении.
Алфавит языка С/С++ состоит из: прописных и строчных букв латинского алфавита, арабских цифр и специальных символов. В языке С++ используются данные типа bool – логические, принимающие значения true (1) – истина и false (0) – ложь, а также AnsiString (String) – строковый тип данных. Все объекты (переменные, массивы и т.д.), с которыми работает программа, необходимо декларировать.
1.Работа с линейными программами 3
1.1 Цель работы: 3
1.2 Общие теоретические сведения: 3
1.3 Задача: 4
1.4 Исходный код: 4
1.5 Отладка и тестирования: 6
1.6 Результат: 6
2.Реализация разветвляющихся алгоритмов 7
2.1 Цель работы: 7
2.2 Общие теоретические сведения: 7
2.3 Задача: 9
2.4 Исходный код: 9
2.5 Отладка и тестирования: 11
2.6 Результат: 11
3.Реализация циклических алгоритмов 13
3.1 Цель работы: 13
3.2 Общие теоретические сведения: 13
3.3 Задача: 14
3.4 Исходный код: 14
3.5 Отладка и тестирования: 16
3.5 Результат: 16
4.Функции пользователя 18
4.1 Цель работы: 18
4.2 Общие теоретические сведения: 18
4.3 Задача: 19
4.4 Исходный код: 19
4.5 Отладка и тестирования: 21
4.6 Результат: 21
5. Программирование задач обработки символьных данных 23
5.1 Цель работы: 23
5.2 Общие теоретические сведения: 23
5.3 Задача: 24
5.4 Исходный код: 24
5.5 Отладка и тестирования: 25
5.6 Результат: 26
ТОРГОВО
ЭКОНОМИЧЕСКИЙ КОЛЛЕДЖ
ОТЧЕТ
По предмету: «ОООП «Учебная практика»»
Группа: 31 ВТ
Дата__________
Оценка________
Выполнил:Тасбулатов А.Е.
Астана 2013
1.Работа с линейными программами 3
1.1 Цель работы: 3
1.2 Общие теоретические сведения: 3
1.3 Задача: 4
1.4 Исходный код: 4
1.5 Отладка и тестирования: 6
1.6 Результат: 6
2.Реализация разветвляющихся алгоритмов 7
2.1 Цель работы: 7
2.2 Общие теоретические сведения: 7
2.3 Задача: 9
2.4 Исходный код: 9
2.5 Отладка и тестирования: 11
2.6 Результат: 11
3.Реализация циклических алгоритмов 13
3.1 Цель работы: 13
3.2 Общие теоретические сведения: 13
3.3 Задача: 14
3.4 Исходный код: 14
3.5 Отладка и тестирования: 16
3.5 Результат: 16
4.Функции пользователя 18
4.1 Цель работы: 18
4.2 Общие теоретические сведения: 18
4.3 Задача: 19
4.4 Исходный код: 19
4.5 Отладка и тестирования: 21
4.6 Результат: 21
5. Программирование задач обработки символьных данных 23
5.1 Цель работы: 23
5.2 Общие теоретические сведения: 23
5.3 Задача: 24
5.4 Исходный код: 24
5.5 Отладка и тестирования: 25
5.6 Результат: 26
Изучить правила составления текстов программ, научиться реализовывать линейные алгоритмы, а также написать и отладить программу линейного алгоритма в консольном и(или) оконном приложении.
Алфавит языка С/С++ состоит из: прописных и строчных букв латинского алфавита, арабских цифр и специальных символов.
В языке С++ используются данные типа bool – логические, принимающие значения true (1) – истина и false (0) – ложь, а также AnsiString (String) – строковый тип данных. Все объекты (переменные, массивы и т.д.), с которыми работает программа, необходимо декларировать. В декларации объектам присваиваются идентификаторы (ID), которые могут включать латинские буквы, символ нижнего подчеркивания «_» и цифры, причем первым символом ID не может быть цифра. Внимание! В языке С/С++ строчные и прописные буквы имеют различные коды, т.е. PI, Pi и pi – различные идентификаторы Перед компиляцией программы с помощью директив препроцессора выполняется предварительная обработка текста программы.
Директивы начинаются с символа #; за которым следует наименование операции препроцессора. Чаще всего используются директивы include и define. Директива #include используется для подключения к программе заголовочных файлов с декларацией стандартных библиотечных функций Директива #define (определить) создает макро константу и ее действие распространяется на весь файл
Cоставить программу вычисления арифметического выражения для заданных значений x, y, z :
.
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "math.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//----------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//----------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Edit1->Text = "3,4";
Edit2->Text = "7,4e-2";
Edit3->Text = "1,943e2";
Memo1->Clear();
Memo1->Lines->Add("
}
//----------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
double x, y, z, a, b ,c, rez;
x = StrToFloat(Edit1->Text);
y = StrToFloat(Edit2->Text);
z = StrToFloat(Edit3->Text);
a = pow(tan(x+y),2);
b = exp(y-z);
c = sqrt(cos(x*x)+sin(z*z));
rez = a-b*c;
Memo1->Lines->Add("При х = "+FloatToStrF(x,ffFixed,7,3)
+ "; y = "+FloatToStrF(y,ffFixed,7,3)+"
Memo1->Lines->Add("Результат = "+FloatToStr(rez));
}
В ходе написание программы ошибок не возникало
В оконном режиме:
В консольном режиме:
Изучить операции сравнения, логические операции, операторы передачи управления if, switch, break, научиться пользоваться простейшими компонентами организации переключений (СheckBox, RadioGroup). Написать и отладить программу
Оператор условной передачи управления :if для выбора одной из ветвей вычислений применяется оператор условного перехода:
if (выражение) оператор 1;
else оператор 2;
вычисляется выражение, и если его значение не равно 0 (истинно), то выполняется оператор 1, иначе – оператор 2
Конструкция else… может отсутствовать и такую форму называют сокращенной, тогда в случае ложности условия управление передается на следующий за if оператор.
Если операторы 1, 2 в свою очередь являются операторами if, то такой оператор называют вложенным, при этом ключевое слово else принадлежит ближайшему предшествующему if.
Операции сравнения: < (меньше), <= (меньше или равно), > (больше), >= (больше или равно), != (не равно), = = (равно). Пары символов разделять нельзя.
Операции сравнения бинарные, их общий вид:
Операнд 1 знак операции Операнд 2
Операндами операций сравнения могут быть данные любых базовых типов, значения которых перед сравнением преобразуются к одному типу.
Логические операции: используются в качестве условий при составлении более сложных выражений. Приведем их перечень в порядке убывания приоритета:
! (отрицание или логическое НЕ – унарная операция), && (конъюнкция или логическое И), || (дизъюнкция или логическое ИЛИ).
Выражения вычисляются слева направо, причем их вычисление прекращается, как только результат становится известен.
Оператор выбора switch:Общая форма оператора выбора (переключателя):
switch(выражение) {
case const_1: операторы; break;
case const_N: операторы; break;
default: операторы;
}
Вычисляется выражение и проверяется, совпадает ли его результат со значением одной из констант. При совпадении выполняются операторы этого case. Значениями const_1,…, const_N могут быть только целые или символьные константы. Конструкция default выполняется, если результат выражения не совпал ни с одной из констант, и может отсутствовать.
Оператор break: выполняет досрочный выход из switch (после выполнения ветви case все остальные будут опущены). Если оператор break в case не записан, то будут выполняться операторы следующих ветвей case до появления оператора break, либо до завершения оператора switch.
Cоставить программу вычисления косинус, синуса , тангенса.
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "math.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//----------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//----------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Edit1->Text="0,1";
Edit2->Text="0,356";
Edit3->Text="-3,5";
Memo1->Clear();
Memo1->Lines->Add("
RadioGroup1->ItemIndex = 0;
}
//----------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Double x,y,z,u,ma;
x=StrToFloat(Edit1->Text);
y=StrToFloat(Edit2->Text);
z=StrToFloat(Edit3->Text);
// Проверка номера нажатой
кнопки и выбор
switch(RadioGroup1->ItemIndex)
case 0: u=cos(x);
Memo1->Lines->Add("Cos(x)= "+FloatToStrF(u,ffFixed,8,6));
break;
case 1: u=sin(x);
Memo1->Lines->Add("Sin(x)= "+FloatToStrF(u,ffFixed,8,6));
break;
case 2: u=tan(x);
Memo1->Lines->Add("Tg(x)= "+FloatToStrF(u,ffFixed,8,6));
break;
}
// Проверка состояния кнопки CheckBox1
if (CheckBox1->Checked){
u = fabs(u);
y = fabs(y);
z = fabs(z);
}
// Нахождение максимального из трех чисел
if (u>y) ma=u;
else ma=y;
if (z>ma) ma=z;
if (CheckBox1->Checked)
Memo1->Lines->Add("Max модулей= "+FloatToStrF(ma,ffFixed,8,6))
else Memo1->Lines->Add("Max=
"+FloatToStrF(ma,ffFixed,8,6))
}
В ходе написание программы ошибок не возникало
В оконном режиме:
В консольном режиме:
Изучить циклические операторы while, do-while, for, научиться реализовывать циклические алгоритмы
Под циклом понимается многократное
выполнение одних и тех же операторов
при различных значениях
1. Оператор цикла с предусловием
while (выражение)
код цикла
организует повторение операторов кода цикла до тех пор, пока выражение истинно (не равно 0), если выражение = 0 (ложно) при первом входе, то код цикла не выполнится ни разу. Если код цикла состоит более чем из одного оператора, то организуется блок.
2. Оператор цикла с постусловием
do
код цикла
while (выражение);
организует повторение кода цикла до тех пор, пока выполнится выражение истинно, после чего управление передается следующему за циклом оператору. Данный оператор гарантирует выполнение кода цикла хотя бы один раз.
3. Оператор с предусловием и коррекцией
for (выражение 1; выражение 2; выражение 3)
код цикла
где выражение 1 – начальное значение параметра цикла; выражение 2 – проверка условия на продолжение цикла; выражение 3 – изменение (коррекция) параметра цикла.
Вначале вычисляется выражение 1, затем проверяется выражение 2, если оно – истинно, то выполняется код цикла, затем производится коррекция в выражении 3, и так до тех пор, пока выражение 2 не примет значение «ложь».
Досрочный выход из операторов цикла выполняет оператор break, а оператор continue выполняет передачу управления в головной оператор цикла.
Написать и отладить программу вывода всех значений функции S(x) для аргумента х, изменяющегося в интервале от а до b c шагом h и заданном n.
.
//----------------------------
Информация о работе Отчет по практике в Торгово-экономическом колледже Казпотребсоюза