Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мет-каС++.doc
Скачиваний:
18
Добавлен:
31.05.2015
Размер:
734.21 Кб
Скачать

Пример линейного алгоритма

Вычислить ,

при x=2,444, y=0,00869, z=-130, дожно быть получено: -0.49871.

Текст программы может иметь следующий вид:

#include <stdio.h>

#include <conio.h>

#include <math.h>

#define x 2.444

#define y 0.00869

#define z -130.0

void main(void)

{

double rezult,dop,a,b,c;

clrscr( ); /* ОЧИСТКА ЭКРАНА */

puts(" ЛАБОРАТОРНАЯ РАБОТА N1 - ЛИНЕЙНАЯ ПРОГРАММА ");

puts("=========================================");

dop=fabs(y-x);

a=pow(x,y+1)+exp(y-1);

b=1+x*fabs(y-tan(z));

c=0.5*pow(dop,2)-pow(dop,3)/3;

rezult=a/b*(1+dop)+c;

printf("\a\n ОТВЕТ: rezult=%lf, Press any key...", rezult);

getch( ); /* ЗАДЕРЖКА ДО НАЖАТИЯ ЛЮБОЙ КЛАВИШИ */

}

Пример использования оператора if

Вычислить значение функции F. Предусмотреть вывод сообщения о том, по какой ветви происходило вычисление.

Текст программы может иметь следующий вид:

#include <conio.h>

#include <stdio.h>

#include <math.h>

#include <stdlib.h>

#define A 1

#define C 3

double max(double m,double n) /* функция max с параметрами m и n */

{ /* для поиска максимального */

if (m>n) return m; /* значения */

else return n;

}

double min(double m, double n) /* функция min с параметрами m и n */

{ /* для поиска минимального */

if (m<n) return m; /* значения */

else return n;

}

void main()

{

double x,y,f; /* декларирование переменных x,y,f */

clrscr();

puts("Введите значения x и y");

scanf("%lf %lf",&x,&y); /* ввод значений х и у */

if ((x>0)&&(y<0))

{

f=(A*x+tan(C*y))/(5-2*x);

puts("F=(а*x+tg(c*y))/(5-2*x)");

}

else if ((x<0)&&(y>0))

{

f=max(pow(x,2.0/3.0),cos(y*y)); /* вызов функции max */

puts("F=max(pow(x,2/3),cos(y*y))");

}

else if ((x>0)&&(y>0))

{

f=min(0.5*x-2*pow(sin(y),2),exp(y)); /* вызов функции min */

puts("F=min(0.5*x-2*pow(sin(y),2),exp(y))");

}

else

{

puts("Функция F не определена\n Press any key...");

getch();

exit(1); /* ПРИНУДИТЕЛЬНОЕ ЗАВЕРШЕНИЕ ПРОГРАММЫ */

}

printf("ОТВЕТ: F=%lf,\n Press any key...\n",f); /* ВЫВОД РЕЗУЛЬТАТА */

getch();

}

Работа интегрированной среды программирования Borland C++, в которой происходит выполнение программы, а также порядок набора текста компиляции, редактирования, отладки и выполнения программы приведено в Приложении.

Варианты индивидуальных заданий

Составить программу для определения значения функции у. Предусмотреть вывод сообщения о том, по какой ветви происходило вычисление значения аргумента функции х.

  1. , где

  2. где

  3. где

  4. где

  5. где

  6. где

  7. где

  8. где

  9. где

  10. где

  11. где

  12. , где

  13. , где

  14. , где

  15. , где

  16. , где

Определить значение функции F. Предусмотреть вывод сообщения о том, по какой ветви происходило вычисление.

  1. ,

  2. ,

  3. ,

  4. ,

  5. ,

Даны 3 точки А(х1,y1), B(х2,y2), C(х3,y3).

  1. Определить положение этих точек относительно прямой y=kx+1 (на прямой, под или над прямой).

  2. Определить расстояние между каждой из точек и началом координат. Вывести точки в порядке возрастания полученных значений.

  3. Определить положение точек на плоскости. Вывести сообщение какой четверти плоскости они принадлежат.

  4. Определить, можно ли построить треугольник по заданным точкам; если да, то вывести его тип (равнобедренный, равносторонний).

  5. Определить положение точек относительно круга с радиусом r, центр которого совпадает с началом координат.