Алгоритмічні мови програмування
Контрольная работа - Компьютеры, программирование
Другие контрольные работы по предмету Компьютеры, программирование
Контрольна робота з теми:
Алгоритмічні мови програмування
Студентка групи Пзс-402
Казюка Олена
Завдання №1. Скласти блок схему та програму обчислення значення функції y=f(x) у точці x0 з точністю . Вхідні дані x0та a містяться у самій програмі, точність вводиться з клавіатури.
№ варіантуF (x)X0A130.46520.000001
Текст програми.
//Программа вычисления значения функции
#include //Открытие библиотек
#include
#include
#include
const double PI=3.1415926; //Ввод константы
main()
{
cout<<"\n"<<"**********Программа вычисления значения функции F(x)*********";
float x,a,y; //Описание переменных
int epsilon;
x=0.4652; //Описание переменных первого порядка
a=PI/6;
cout<<"\n"<<" Сколько знаков после запятой вывести на экран ";
scanf("%d",&epsilon); //Считать число знаков epsilon
y=1-(cos(x-a))/(sqrt(a+(cos(x+a)/sin(x+a))))+exp(a*x); //функция, значение которой надо найти
printf("%.*f\n",epsilon,y);
cout<<"\n"<<" Нажмите любую клавишу";
getch(); //Считать символ с клавиатуры
return 0;
}
Результати виконання програми.
**********Программа вычисления значения функции F(x)*********
Сколько знаков после запятой вывести на экран 6
1.357433
Нажмите любую клавишу
Блок-схема№1 до завдання №1
Завдання №2. Використовуючи схему Горнера обчислити два значення поліному. Скласти блок-схему та програму. У програмі передбачити можливість введення вхідних даних як з клавіатури, так і з файлу INPUT.TXT, що міститься в поточній директорії, та використання функцій або процедур користувача.
№ варіантуПоліномЗначення x13x1=0,321; x2=-0,889
Текст програми.
//Программа вычисления значения полинома
#include //подключение библиотек
#include //библиотека считывания значений с клавиатуры
float y (float x); //объявление функции
int main(void)
{
float x1,x2,y1,y2; //описание переменных
int a,b;
FILE *infile; //показатель на структуру типа FILE
printf("\n*****Программа вычисления значения полинома*****");
printf("\nСколько знаков после запятой вывести на экран? ");
scanf("%d", &a); //Считывается с клавиатуры точность выведения
printf("\nВвести значение Х: \n 1) из файла");
printf("\n 2) с клавиатуры\n");
scanf("%d", &b); //считывание с клавиатуры начальных данных
if (b == 1) //указание на то, что b равно 1
{
if ((infile = fopen("input.txt", "rt"))== NULL)
{ //открыли файл для чтения
fprintf(stderr, "Нельзя открыть файл.\n");//Выдаёт сообщение при ошибке
return 1;
} //открытие файла
fscanf (infile, "%f",&x1);
fscanf (infile, "%f",&x2);
} //считывание значений х1 и х2 из файла input.txt
else
{
printf("Введите значение Х1\n"); //считывание значений х1 и х2 с клавиатуры
scanf("%f", &x1);
printf("Введите значение Х2\n");
scanf("%f", &x2);
};
y1 = y(x1);
y2 = y(x2);
printf("\nЗначение полинома в точке X1=", x1);
printf("%.*f\n",a, y1);
printf("Значение полинома в точке X2=", x2);
printf("%.*f\n",a, y2);
printf("\nНажмите любую клавишу на клавиатуре");
getch(); //читается символ с клавиатуры
fclose(infile); //Закрывается файл input.txt
return 0; //Завершение работы программы
}
float y (float x) //обозначение функции вычисления полинома
{
return ((((2.4*x+4.6)*x+6.8)*x+8.0)*x+0.2)*x+2.4;//сама функция (полином)
}
Результати виконання програми.
*****Программа вычисления значения полинома*****
Сколько знаков после запятой вывести на экран? 6
Ввести значение Х:
1) из файла
2) с клавиатуры
2
Введите значение Х1
0.321
Введите значение Х2
-0.889
Значение полинома в точке X1=3.570466
Значение полинома в точке X2=5.307651
Нажмите любую клавишу на клавиатуре
Блок-схема до завдання №2
Завдання №3. Скласти блок-схему та програму табулювання функції на проміжку [a, b] з заданим кроком h з використанням циклу з після умовою. Програма, крім того, повинна побудувати графік функції на вказаному проміжку з побудовою всіх точок, обчислених при табулюванні.
№ варіантуФункціяabh13160.2Текст програми.
// Программа табуляции функции на
// промежутке с заданным шагом и построением графика
#include //Открытие библиотечных функций
#include //Функция подключения графики
#include //Функция подключения математических вычислений
#include //Чтение символов с клавиатуры
float F (float x); //Объявление функции Y
int main()
{
float a,b,h,y,max,i; //Описание переменных
int gerr; //Ошибка графики
int g_driver, g_mode; //Графический драйвнр и режим
int XMAX, YMAX,j; //Ширина и высота графика
char msg[5];
printf("*****Программа табуляции функции Y на промежутке [a,b] с шагом h*****\n");
printf("\nВведите значение начала табуляции: а = ");
scanf("%f", &a);
printf("\nВведите значение конца табуляции: b = ");
scanf("%f", &b);
printf("\nВведите значение шага табуляции: h = ");
scanf("%f", &h);
i=a; max=0;
do
{
y=F(i); //табуляция Y
if (fabs(