Вычислить элементы массива Y по формуле Yik - C (СИ)
Формулировка задачи:
Здравствуйте! Такая задачка:
Ввести массив А(10,10). Вычислить элементы массива Y по формуле Yik=
1) 2*Aik, если Aik < 0;
2) 0, если Aik = 0;
3) -Aik, если Aik > 0;
Вывести исходный и результирующий массивы и количество элементов массива Y, получивших значение 0.
Проблема в том, что запись первого массива осуществляется, а вот второй результирующий что-то не показывает..
Не подскажите, в чём проблема?
#include <stdio.h> int const n = 3, m = 3; int main() { int x[n][m]; int y[n][m]; int k = 0; printf("Enter thr first massiv "); for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { printf("x[%d][%d]=", i, j); scanf_s("%d", &x[i][j]); } } for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (x[i][j] < 0) scanf_s("%d", &y[i][j]); if (x[i][j] == 0) scanf_s("%d", &y[i][j]); if (x[i][j]>0) scanf_s("%d", &y[i][j]); } for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (y[i][j] == 0) k += 0; printf("y[%d][%d]/n", i, j, y[i][j]); } printf("The number of elements, that == 0, - %d", k); } } }
Решение задачи: «Вычислить элементы массива Y по формуле Yik»
textual
Листинг программы
#include <stdio.h> int main(void) { const int N = 3; const int M = 3; int x[N][M], y[N][M]; int k = 0; printf("Enter thr first massiv "); for (int i=0; i < N; ++i) { for (int j=0; j < M; ++j) { printf("x[%d][%d]=", i, j); scanf_s("%d", &x[i][j]); if (x[i][j] < 0) { y[i][j] = 2 * x[i][j]; } else { y[i][j] = -x[i][j]; if (y[i][j] == 0) ++k; } } } printf("x:"); for (int i=0; i < N; ++i) { for (int j=0; j < M; ++j) { printf("x[%d][%d] = %d ", i, j, x[i][j]); } printf("\n"); } printf("y:"); for (int i=0; i < N; ++i) { for (int j=0; j < M; ++j) { printf("y[%d][%d] = %d ", i, j, y[i][j]); } printf("\n"); } printf("The number of elements, that == 0, - %d", k); return 0; }
Объяснение кода листинга программы
В этом коде:
- Введены и заданы значения переменных N и M, которые определяют размерность массивов x и y.
- Создаются массивы x и y размером N на M.
- Запрашиваются значения для элементов массива x с помощью функции scanf_s.
- Вычисляются значения для элементов массива y по формуле Yik
- Если x[i][j] < 0, то y[i][j] = 2 * x[i][j].
- Иначе y[i][j] = -x[i][j], и если y[i][j] == 0, то увеличивается счетчик k.
- Выводятся значения массивов x и y на экран.
- Выводится значение переменной k, которая считает количество элементов массива y равных нулю.
- Завершается программа с возвращаемым значением 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д