Перейти к содержанию

Помогите с С++!


Рекомендуемые сообщения

Разработать программу,определяющую принадлежит ли точка заданной фигуре.

#include <stdio.h>#include <conio.h>#include <locale.h>int main(void) {	float x, y;	setlocale(0, "");	printf("введите кординату х>");		scanf_s("%f", &x);		printf("введите кординату у>");		scanf_s("%f", &y);		printf("x=%f; y=%f\n", x, y);		if (-1 >x && x >= -2 && x>1 && x<=2 && 1 < y && y < -1 && y>1 && y<=2) 			printf("Точка не попадает в область\n");		else printf("Точка попадает в область\n");		_getch();		return 0;}

hjDcMKWGcx4.jpg

 

MVS 2015 года.

Изменено пользователем bmw123
Ссылка на комментарий
  • 2 недели спустя...

if (-1 >x && x >= -2 && x>1 && x<=2 && 1 < y && y < -1 && y>1 && y<=2)

 

"&&" - логическое "и" или "или"?

 

должно быть:

если (x<-1 или x>1 или y<-1 или y>1 или x>=-1 и y<0 или x<=1 и y<0)

то вывести "точка не попадает в область";

иначе вывести "точка попадает в область"

 

т.е. условие составлено некорректно.

 

P.S. это же вроде простой язык C (си)?

Изменено пользователем Hersones
Ссылка на комментарий

Hersones,Спасибо, нужна еще помощь :help:  . Вывести на экран значение функции,заданной с помощью ряда Тейлора на интервале от х(н) до х(к) с шагом d(x) с точностью е.

Собственно член ряда определяется как: (-1)^n*x^2n/(2n)!(факториал). х по модулю принимает любые значения.n от нуля до бесконечности.


 

#include <stdio.h>#include <conio.h>#include <math.h>#include <locale.h>#include<cmath>int main(){	setlocale(LC_ALL, "rus");	int n = 1; //степень	double dx = 0.1,//шаг		xn = 0, xk = 0,// х начальное и конечное		e = 0,// точность		y = 0;//полученное значения для каждого значения х		printf("Введите Хn и Xk:");	scanf_s("%lf %lf", &xn, &xk);	printf("\nВведите точность:");	scanf_s("%lf", &e);	printf("\n_________________________________________________\n");	printf("| x-значение | y(x)-значение | n-количество |\n");	printf("|_________________________________________________|\n");	for (xn; xn <= xk; xn += dx) {				for(int i=1;i<=2*n;i++)				fact=fact*i;				fact=q;		while (abs(pow(xn, 2 * n)*pow(-1.0, n) / q) > e) ;		{						n=n+1;			y=0;					y += pow(xn, 2 * n)*pow((-1.0), n) / q;					printf("| %10.1f | %13.4f | %12d |\n", xn, y, n);			}	printf("|_________________________________________________|");	_getch();	return 0;}

Изменено пользователем bmw123
Ссылка на комментарий

Hersones,

Вроде так: 

#include <stdio.h>#include <conio.h>#include <math.h>#include <locale.h>#include<cmath>int main(){	setlocale(LC_ALL, "rus");	int n = 1, fact; //степень	double dx = 0.1,//шаг		xn = 0, xk = 0,// х начальное и конечное		e = 0,// точность		y = 0;//полученное значения для каждого значения х		printf("Введите Хn и Xk:");	scanf_s("%lf %lf", &xn, &xk);	printf("\nВведите точность:");	scanf_s("%lf", &e);	printf("\n____________________________________________\n");	printf("| x-значение | y(x)-значение | n-количество |\n");	printf("|___________________________________________|\n");	for (xn; xn <= xk; xn += dx) {		n = 0;		y = 0;		do		{			n = n + 1;			fact = 1;			for (int i = 1; i <= 2 * n; i++)				fact = fact*i;			y += pow(xn, 2 * n)*pow((-1.0), n) / fact;		}				 while ((abs(pow(xn, 2 * n)*pow(-1.0, n)) / fact) > e);		n = n + 1;		printf("| %10.1f | %13.4f | %12d |\n", xn, y, n);			}	printf("|___________________________________________|");	_getch();	return 0;} 

Дана целочисленная матрица A[N][N].Найдите в каждой строке матрицы максимальный и минимальный элемент матрицы и поместить их на место первого и последнего элемента матрицы соответственно.

#include<stdio.h>#include<conio.h>#include<locale.h>#include<iostream>using namespace std;int main(void) {	int A[4][4], max , min , maxi, mini, cout;	setlocale(0, "");	for (int i = 0; i < 4; i++)	{		for (int j = 0; j < 4; j++)		{			printf("%введите числа a[%d][%d]\n", i, j);			scanf_s("%d", &A[i][j]);		} 	}	for (int i = 0; i < 4; i++)	{		for (int j = 0; j < 4; j++)			printf("%i ", A[i][j]) ;		 printf("\n");	}	for (int i = 0; i < 4; i++)	{		for (int j = 0; j < 4; j++)		{			max = A[i][0];			min = A[i][0];			if (A[i][j] > max) 				max = A[i][j];						if (A[i][j] < min)				min = A[i][j];			}		max = A[i][3];		min = A[i][0];			printf("%d %d %i \n", max,A[i][j],min);	}							_getch();		re 

Теперь не могу заменить в матрицe элементы на минимальный(1 элемент строки) и максимальный(последний элемент матрицы).

Ссылка на комментарий

Hersones,Ну примерно так.

#include<stdio.h>#include<conio.h>#include<locale.h>#define size 30int main(void) {	int A[size][size],N, max, min;	setlocale(0, "");	printf("введите размер матрицы");		scanf_s("%d",&N);	for (int i = 0; i < N; i++)	{		for (int j = 0; j < N; j++)		{			printf("%введите числа a[%d][%d]\n", i, j);			scanf_s("%d", &A[i][j]);		}	}	printf("Исходная Матрица");	printf("\n");	for (int i = 0; i < N; i++)	{		for (int j = 0; j < N; j++) {			printf("%i ", A[i][j]);		}printf("\n");	}	printf("\n");	printf("Конечная матрица");	printf("\n"); 	for (int i = 0; i < N; i++)	{		max = A[i][0];		min = A[i][0];		for (int j = 0; j < N; j++)		{			if (A[i][j] >= max) {				max=A[i][j];							}			if (A[i][j] <= min){				min=A[i][j];		}					}		A[i][0] = min;		A[i][N] = max;		printf("%d ",min);		for (int j = 1; j < N-1; j++) {			printf("%i ", A[i][j]);		}		printf("%d", max);		printf("\n");			}		_getch();		return 0;} 

 

Изменено пользователем bmw123
Ссылка на комментарий
  • 2 недели спустя...

Hersones, Не знаешь как сделать массив из вещественных чисел?

1.    В одномерном динамическом массиве, состоящем из  n вещественных чисел вычислить количество элементов массива, лежащих в диапазоне от А до В.

Для целочисленных написал, а для вещественных что надо изменить? А то у меня не получается((

#include <locale.h>#include <conio.h>#include <stdlib.h>#include <iostream>#include <iomanip>using namespace std;int main(void){	float A=0, B=0,  d=0;	int size;                /* размер массива */	int *raz;       /* указатель на начало массива */	           /* текущие указатели */	setlocale(LC_ALL, "rus");	cout << "razmer massiva:";	cin >> size;	_getch();	/* выделения памяти */	raz = new int[size];	cout << "massiv:" << endl;	for (int i = 0; i < size ; i++) {		cout << "элемент["<< i << "]" << endl;		cin >> raz[i];	}	cout << "4islo A " << A << endl;	cin >> A;	cout << "4islo B " << B << endl;	cin >> B;		for (int i = 0; i < size; i++) {		if (raz[i] >= A)		if (raz[i] <= 		d = d + 1;	}	cout << "количество элементво в промежутке от А до В = " << d << endl;	cin >> d;	delete [] raz;		return 0;		system("pause");}

 

P.S. А все сделал)) через точку вводить дробь то надо.

Изменено пользователем bmw123
Ссылка на комментарий

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

Вы сможете оставить комментарий после входа в



Войти
×
×
  • Создать...