- •Лабораторная работа №1
- •Математическая постановка
- •Содержание результатов работы программы на экране2
- •Выполнил: Петухов п.А., гр. Ут – 11, вариант № 11
- •Текст программы
- •Содержание результатов работы программы на экране
- •Текст программы
- •Текст программы
- •Разработка программы
- •Содержание результатов работы программы на экране.
Содержание результатов работы программы на экране
Рисунок 2
Выполнил: Петухов П.А., гр. УТ – 11, вариант № 11
Введите значения x
Исходные данные: x1 =-1,285;
Результаты: y1 =-0,27442*102;
Исходные данные: x2 =0,65;
Результаты: y2 =-0,48982*101;
Исходные данные: x3 =6,161;
Результаты: y3 =-0,18694*101.
Текст программы
(см. Значение переменных в Таблица 2)
//---------------------------------------------------------------------------
#include <vcl.h>
#include <stdio.h>
#include <math.h>
#include <conio.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{ double x,y;
printf ("\n\n\t ***Rabota 2*** \n");
printf ("Vypolnil: Petukhov P.A.,gruppa UT-11,variant 11\n");
printf ("Vvedite x:\t");
scanf ("%le",&x);
printf ("Ishodniye danniye:x=%.4le\n",x);
y=(pow(fabs(x),2.0/3)+sqrt(fabs (x)))/(log10(sin(fabs(x)+(29*M_PI/180))*sin(fabs(x)+(29*M_PI/180)))/log10(2))+M_PI*fabs(tan(x))/2;
printf("Rezultat: y=%.4le \n",y);
getch();
return 0;
}
//---------------------------------------------------------------------------
Выводы по работеi
Тестирование программы прошло успешно.
Ошибки отладки, побочные эффекты при работе программы.
Проблемы возникли при вводе отрицательного значения переменной, проблема решена путём замены x2/3 на l x2/3 l.
Лабораторная работа №3
Цель: изучение операций целочисленной арифметики, выработка умений алгоритмизации, программирования, отладки и тестирования программ линейной структуры.
Задание: дано вещественное число ABCDEF.GHIKLM, в котором буквы – это любые цифры (0..9). Составить алгоритм и программу для определения числа ABCDE.HIKLFGM
Математическая постановка
Исходные данные: L=ABCDEF.GHIKLM.
Результаты: N= ABCDE.HIKLFGM
Рассчитаем для L=123456.123456
Разделим L на два числа W и V такие, что W=123456 , V=0.123456 * 106. Тогда целая часть Q числа N: Q=W/10=12345.
Дробная часть R числа N: R=V/10%10000*1000+W%10*100+V/100000*10+V%10= =2345616.
N=Q+R*10-6=12345.2345616
Блок-схема программы
Составление тестов
(формулы для составления тестов смотри в Математическая постановка).
Тест:
L1=123456.123456 N1=12345.2345616;
L2=123456.000000 N2= 12345.0000600
L3=0.123450 N3=0.2345010
Разработка алгоритма
Весь алгоритм состоит из выделения одной или нескольких цифр из числа L с помощью операций «/»; «%»; «*»; «+»; «-». Описание алгоритмов составляется для L=ABCDEF.GHIKLM для простоты решения и понимания.
Вначале требуется определить, сколько знаков потребуется выделить под ответ в переменной N.Так как задание состоит в том, чтобы поменять цифры местами, то, следовательно, под число N потребуется 12 знаков. Но так как по заданию N= ABCDE.HIKLFGM , то под десятичную часть выделяем 7 знаков, а под целую – 5;
Представим вещественное число L в виде 2ух целых чисел W – целая часть и V – десятичная. Ответ N также разобьём на целую часть Q и десятичную R;
Вычислим Q. Она состоит из 5-и цифр, позиции со 1-ой по 5-ую, следовательно, мы должны убрать последнюю цифру числа W с помощью операции «/»;
Операцию вычисления R запишем как сумму HIKL + F + G + M;
Вычислим HIKL. Она состоит из 4 цифр числа V, со 2-ой по 5-ую позиции, следовательно, мы должны убрать последнюю цифру числа V с помощью операции «/», а затем выделить 4 последние цифры с помощью операции «%»;
Вычислим F. Для этого операцией «%» выделяем её значение в числе W;
Вычислим G, убрав операцией «/» 5 цифр из числа V;
Вычислим M, выделив её из числа V операцией «%»;
Запишем сумму переменных HIKL,F,G,M в переменную R;
Выразим конечное вещественное число N через сумму переменных Q и R.
