Дано натуральное число n. Выяснить, сколько положительных элементов содержит матрица - C (СИ)
Формулировка задачи:
Помогите доделать,может и переделать программу на обычном Си(не С++) вот условие:Дано натуральное число N. Выяснить, сколько положительных элементов содержит матрица Аij , где i,j=1,....,n; Аij = sin(i^2-j^2/n)
#include <stdio.h> #include <math.h> int maim() { int i,j,n; printf ("Enter numbers of elements: "); scanf("%d, &n); int count=0; for(i=0; i<n;i++) { for(j=0;j<n;j++){ if (sin(i*i-j*j/n)>0) count++; } } printf("\n"); }
Решение задачи: «Дано натуральное число n. Выяснить, сколько положительных элементов содержит матрица»
textual
Листинг программы
#include <stdio.h> #include <math.h> int main() { printf("Enter number of elements: "); scanf("%d",&N); int **mat; mat = new int* [ N ]; int counter = 0; printf("\n"); for ( int i = 0; i < N; i ++ ) { mat[i] = new int [ N ]; for ( int j = 0; j < N; j ++ ) { mat[i][j] = sin(i*i-j*j/n); printf("%d\t", mat[i][j]); if ( mat[i][j] > 0 ) counter++; } printf("\n"); } printf("Number of elemets >0 = %d", counter); for ( int j = 0; j < N; j ++ ) delete [] mat[j]; delete [] mat; system("pause"); return 0; }
Объяснение кода листинга программы
В этом коде:
- Пользователю предлагается ввести количество элементов в матрице (переменная N).
- Создается динамический массив (матрица) с помощью оператора new.
- В цикле заполняются значения элементов матрицы с использованием функции sin из библиотеки math.h.
- Если значение элемента больше нуля, увеличивается счетчик counter.
- Выводится количество положительных элементов.
- Матрица освобождается с помощью оператора delete.
- Программа завершается с помощью команды system(
pause
).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д