bsuir.info
БГУИР: Дистанционное и заочное обучение
(файловый архив)
Вход (быстрый)
Регистрация
Категории каталога
Другое [157]
АВС [6]
КПиЯП [80]
ОАиП [305]
ОКТ [79]
СиСПО [8]
Форма входа
Поиск
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Файловый архив
Файлы » ПОИТ » ОАиП

ОАИП
Подробности о скачивании 14.06.2012, 11:34
ЗАДАНИЕ №1
Создать программу вычисления указанной величины. Результат проверить при заданных исходных значениях.
.
При x = 3.7410-2, y = –0.825,
z = 0.16102  v = 1.0553.

Текст программы:

#include <stdio.h>
#include <conio.h>
#include <math.h>
int main()
{
double x, y, z, a, b ,c, rez;
printf("Vvedite x\n");
scanf("%lf",&x);
printf("Vvedite y\n");
scanf("%lf",&y);
printf("Vvedite z\n");
scanf("%lf",&z);
puts("===========================");
a=1+pow(sin(x+y),2);
b=fabs(x-2*y/(1+pow(x*y,2)));
c=pow(cos(atan(1/z)),2);
rez=a/b*pow(x,fabs(y))+c;
puts("Rezultat virazhenia: ");
printf("%f",rez);
getch();
}

Результаты выполнения:

ЛИТЕРАТУРА
1. Юлин В.А., Булатова И. Р. Приглашение к Си. – Минск: Вышэйшая школа, 1990
ЗАДАНИЕ №2
Составить программу для вычисления значения rez в зависимости от поставленного условия.
rez =

Текст программы:
#include <stdio.h>
#include <conio.h>
#include <math.h>

int main()
{
double k1,k2,rez;

printf("Vvedite k1\n");
scanf("%lf", &k1);
printf("Vvedite k2\n");
scanf("%lf", &k2);

if ((k1*k2>0)&&(k1*k2<=1))
{
rez=sqrt(fabs(2*k1-5*pow(k2,2)))*exp(k1+k2);
printf("Rezultat: %f\n",rez);
puts("Vichislenie prohidilo po pervoi vetvi");
}
else
{
if (k1*k2>1)
{
rez=sqrt(fabs(2*k1-5*pow(k2,2)))*exp(k1-k2);
printf("Rezultat: %f\n",rez);
puts("Vichislenie prohidilo po vtoroi vetvi");
}
else
puts("Proizvedenie k1 i k2 otricatel'no ili ravno 0");
}
getch();
}

Результаты выполнения:



ЛИТЕРАТУРА
1. Юлин В.А., Булатова И. Р. Приглашение к Си. – Минск: Вышэйшая школа, 1990
2. Павловская Т. А. С/C++. Программирование на языке высокого уровня. – СПБ.: Лидер, 2010

ЗАДАНИЕ №3.
Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x)–S(x)| и вывести в виде таблицы. Значения a, b, h и n вводятся с клавиатуры.
Работу программы проверить для a = 0,1; b = 1,0; h = 0,1; значение параметра n выбрать в зависимости от задания.


Текст программы:

#include <stdio.h>
#include <conio.h>
#include <math.h>

int main()
{
int n,k,fact;
float a,b,h,x,y,razn,f,s,pi=3.14;

puts("Vvedite a, b, h ,n");
scanf("%f %f %f %d",&a,&b,&h,&n);

for (x=a; x<=b; x+=h)
{
f=1;
s=1;
fact=1;
for (k=1; k<=n;k++)
{
f=cos(k*pi/4)/fact*pow(x,k);
s+=f;
fact*=k+1;
}
y=exp(x*cos(pi/4))*cos(x*sin(pi/4));
razn=fabs(s-y);
printf("\n x=%8.2f sum=%8.5f y=%8.5f razn=%8.5f",x,s,y,razn);
}

getch();
}

Результаты выполнения:


ЛИТЕРАТУРА
1. Юлин В.А., Булатова И. Р. Приглашение к Си. – Минск: Вышэйшая школа, 1990
2. Павловская Т. А. С/C++. Программирование на языке высокого уровня. – СПБ.: Лидер, 2010

ЗАДАНИЕ №4
В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить сумму элементов массива, расположенных до последнего положительного элемента (не включительно).

Текст программы:

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main()
{
int mas[20], n, i,sum,k;

puts("Vvedite kolichestvo elementov massiva");
scanf("%d",&n);
puts("Vvedite znachenie massiva poelementno");

for (i=0; i<n; i++)
{
scanf("%d",&mas[i]);
}
sum=0;

for (i=n-1; i>=0; i--)
{
if (mas[i]>0)
{
k=i;
break;
}
}

for (i=0; i<k; i++)
sum+=mas[i];
printf("Summa: %d", sum);
getch();
}

Результаты выполнения:


ЛИТЕРАТУРА
1. Юлин В.А., Булатова И. Р. Приглашение к Си. – Минск: Вышэйшая школа, 1990
2. Павловская Т. А. С/C++. Программирование на языке высокого уровня. – СПБ.: Лидер, 2010

ЗАДАНИЕ №5
В двухмерном целочисленном массиве (размеры массива N, M и значения его элементов вводить с клавиатуры) найти указанное значение.
Массив в памяти разместить динамически, ввод исходных данных и вывод полученных результатов выполнить в основной функции, а решение задачи оформить в виде отдельной функции пользователя. Не использовать глобальных переменных. Найти максимальный элемент и поменять его с первым элементом.

Текст программы:

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int func(int,int,int**);

int main()
{
int **a, m, n,i,j;

printf("Vvedite razmernost' matrici NxM\n");
scanf("%d %d", &n, &m);
a = new int*[n];
for(i=0; i<n;i++)
a[i] = new int[m];
puts("Vvedite znachenie massiva poelementno");

for(i=0;i<n;i++)
for(j=0; j<m; j++)
scanf("%d", &a[i][j]);
func(n,m,a);

for(i=0; i<n; i++)
{
for (j=0; j<m; j++)
printf("%4d", a[i][j]);
puts("");
}
delete []a;
getch();
}

int func(int a, int b, int **x)
{
int max, imax, jmax, i, j,A;

max=x[0][0];
imax=0;
jmax=0;
for (i=0; i<a; i++)
for (j=0; j<b; j++)
{
if (x[i][j]>max)
{
max=x[i][j];
imax=i;
jmax=j;
}
}
A=x[0][0];
x[0][0]=x[imax][jmax];
x[imax][jmax]=A;
}

Результаты выполнения:



ЛИТЕРАТУРА
1. Юлин В.А., Булатова И. Р. Приглашение к Си. – Минск: Вышэйшая школа, 1990
2. Павловская Т. А. С/C++. Программирование на языке высокого уровня. – СПБ.: Лидер, 2010
Категория: ОАиП | Добавил: gor
Просмотров: 1748 | Загрузок: 20
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]