рефератырефератырефератырефератырефератырефератырефератырефераты

рефераты, скачать реферат, современные рефераты, реферат на тему, рефераты бесплатно, банк рефератов, реферат культура, виды рефератов, бесплатные рефераты, экономический реферат

"САМЫЙ БОЛЬШОЙ БАНК РЕФЕРАТОВ"

Портал Рефератов

рефераты
рефераты
рефераты

Подготовка и решение на ПК задач с разветвлением

Подготовка и решение на ПК задач с разветвлением

Ц
ель контрольной работы: приобретение практических навыков по подготовке, отладке и выполнению разветвляющихся программ.

Задача 1. Найти все рациональные корни полинома n-й степени с целыми коэффициентами.

Задание

1.

Для нахождения всех рациональных корней полинома n-й степени с целыми коэффициентами используем теорему

Теорема. Для того чтобы несократимая дробь p/q была корнем уравнения (q0) с целыми коэффициентами, необходимо, чтобы число р было делителем свободного члена а0, а число q - делителем старшего коэффициента an.

Алгоритм:

Исходный код программы:

#include <math.h> //подключение библиотек

#include <iostream>//подключение библиотек

#include <conio.h>//подключение библиотек

#include <stdio.h>//подключение библиотек

using namespace std;

int main()//главная функция

{

double x,f;//объявление переменных и их типа

x=1.;//присваение значения

f=24.*pow(x,5)+10.*pow(x,4)-pow(x,3)-19.*pow(x,2)-5.*x+6;//описане формулы

if(f==0.) //проверка условия

printf("f(x)=%6.2f x=%6.2f\n",f,x);//вывод результата

x=-1.; //присваение значения

f=24.*pow(x,5)+10.*pow(x,4)-pow(x,3)-19.*pow(x,2)-5.*x+6;//описане формулы

if(f==0.)//проверка условия

printf("f(x)=%6.2f x=%6.2f\n",f,x);//вывод результата

x=6./24.; //присваение значения

f=24.*pow(x,5)+10.*pow(x,4)-pow(x,3)-19.*pow(x,2)-5.*x+6;//описане формулы

if(f==0.)//проверка условия

printf("f(x)=%6.2f x=%6.2f\n",f,x);//вывод результата

x=-6./24.; //присваение значения

f=24.*pow(x,5)+10.*pow(x,4)-pow(x,3)-19.*pow(x,2)-5.*x+6;//описане формулы

if(f==0.)//проверка условия

printf("f(x)=%6.2f x=%6.2f\n",f,x);//вывод результата

x=6./12.; //присваение значения

f=24.*pow(x,5)+10.*pow(x,4)-pow(x,3)-19.*pow(x,2)-5.*x+6;//описане формулы

if(f==0.)//проверка условия

printf("f(x)=%6.2f x=%6.2f\n",f,x);//вывод результата

x=-6./12.; //присваение значения

f=24.*pow(x,5)+10.*pow(x,4)-pow(x,3)-19.*pow(x,2)-5.*x+6;//описане формулы

if(f==0.)//проверка условия

printf("f(x)=%6.2f x=%6.2f\n",f,x);//вывод результата

x=6./6.; //присваение значения

f=24.*pow(x,5)+10.*pow(x,4)-pow(x,3)-19.*pow(x,2)-5.*x+6;//описане формулы

if(f==0.)//проверка условия

printf("f(x)=%6.2f x=%6.2f\n",f,x);//вывод результата

x=-6./6.; //присваение значения

f=24.*pow(x,5)+10.*pow(x,4)-pow(x,3)-19.*pow(x,2)-5.*x+6;//описане формулы

if(f==0.)//проверка условия

printf("f(x)=%6.2f x=%6.2f\n",f,x);//вывод результата

getchar();//функция задержки экрана

getchar();//функция задержки экрана

getchar();//функция задержки экрана

getchar();//функция задержки экрана

return 0;

}

Результат роботы:

Задача 2. . Вычислить значение функции Y(x) при различных значениях исходных данных x и a.

Исходные данные (по вариантам) находятся в таблице 2.

Функции

Исходные данные

вар.

x

a

15

6

2.7

4.5

Исходный код программы

#include <math.h>//подключение библиотек

#include <conio.h>//подключение библиотек

#include <stdio.h>//подключение библиотек

#include <iostream>//подключение библиотек

using namespace std; //подключение библиотек

int main()//главная функция

{

cout<<"\n\n";//отступ двух строк (для красоты:-)

double x,y,a,b;//объявление переменных и их типа

cout<<"Vvedite X: ";//вывод сообщеня пользователю

cin>>x;//считывание значения, введенного пользователем

a=4.5;//приcваение значений

b=1/2;//приcваение значений

if (x>=a)//проверка условия

{

y=(log(1+pow(1+pow(x,2),b)))/(1+exp(1+x*x))+(a+exp(1+x*x));//описане формулы

}

else

y=(log(1+pow(1+pow(x,2),2)))/1+exp(1+x*x)+(a-exp(1+x*x));//описане формулы

printf("f(x)=%2.2f",y);//вывод результата

getchar();//функция задержки экрана

getchar();//функция задержки экрана

getchar();//функция задержки экрана

getchar();//функция задержки экрана

return 0;

}

Результат роботы:

Задача 3. В восточном календаре принят 60-летний цикл, состоящий из 12- летних подциклов, обозначаемых названиями цвета: зеленый, красный, желтый, белый и черный. В каждом подцикле годы носят названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, курицы, собаки и свиньи.

По номеру года вывести его название, если 1984 год был началом цикла годом зеленой крысы. Написать программу с использованием оператора switch/case.

Схема алгоритма

Исходный код программы:

#include <iostream>//подключение библиотек

#include <math.h>//подключение библиотек

#include <conio.h>//подключение библиотек

#include <stdio.h>//подключение библиотек

#include <string.h>//подключение библиотек

#include <windows.h>//подключение библиотек

using namespace std;

char buf[256]; // функция для использования

char* rus(const char* text) // русского языка в программе

{ AnsiToOem(text,buf);

return buf; }

int main()//главная функция

{

int i; //объявление переменных и их типа

cout<<rus("Введите год: ");//вывод сообщеня пользователю

cin>>i; //считывание значения, введенного пользователем

cout<<rus("\nГод ");//вывод сообщеня пользователю

while ((i<1984)||(i>1996))//запуск цикла

{

if (i<1984) //проверка условия

{i=i+10;}

else if (i>1996) //проверка условия

{i=i-10;}

}

switch (i)

{

case 1984: cout<<rus("зелен"); break;

case 1985: cout<<rus("зелен"); break;

case 1986: cout<<rus("красн"); break;

case 1987: cout<<rus("красн"); break;

case 1988: cout<<rus("жолт"); break;

case 1989: cout<<rus("жолт"); break;

case 1990: cout<<rus("бел"); break;

case 1991: cout<<rus("бел"); break;

case 1992: cout<<rus("черн"); break;

case 1993: cout<<rus("черн"); break;

case 1994: cout<<rus("зелен"); break;

case 1995: cout<<rus("зелен"); break;

}

while ((i<1984)||(i>1996))

{

if (i<1984) //проверка условия

{i=i+12;}

else if (i>1996) //проверка условия

{i=i-12;}

}

switch (i)

{

case 1986: cout<<rus("ого "); break;

case 1987: cout<<rus("ого "); break;

case 1988: cout<<rus("ого "); break;

default: cout<<rus("ой "); break;

}

switch (i)

{

case 1984: cout<<rus("крысы"); break;

case 1985: cout<<rus("коровы"); break;

case 1986: cout<<rus("тигра"); break;

case 1987: cout<<rus("зайца"); break;

case 1988: cout<<rus("дракона"); break;

case 1989: cout<<rus("змеи"); break;

case 1990: cout<<rus("лошади"); break;

case 1991: cout<<rus("овцы"); break;

case 1992: cout<<rus("обезьяны"); break;

case 1993: cout<<rus("курицы"); break;

case 1994: cout<<rus("собаки "); break;

case 1995: cout<<rus("свиньи"); break;

}

getchar();//функция задержки экрана

getchar();//функция задержки экрана

getchar();//функция задержки экрана

return 0;

}

Результат роботы:

Вывод: выполняя контрольную работу я ознакомился со средствами решения задач разветвляющихся программ на ЭВМ, изучил основные разветвляющиеся конструкции языка С++, функции стандартных библиотек. Я приобрел практические навыки решения задач разветвляющегося характера, их тестирования и отладки.

рефераты
РЕФЕРАТЫ © 2010