Другие языки программирования и технологии

Прошу помощи с заданиями по С++, помогите написать программки.

1.Составить программу нахождения цифрового корня натурального числа. Цифровой корень числа получается следующим образом. Складываем все цифры этого числа, затем все цифры найденной суммы и повторяем этот процесс до тех пор, пока в результате не будет получено однозначное число (цифра), которое и называется цифровым корнем данного числа. 2.Обработка матриц. Исходные данные: квадратная матрица чисел с заданным заранее размером NxN (N задавать через define). Для отладки матрицу можно создать прямо в программном коде, однако конечный вариант программы должен запрашивать элементы матрицы у пользователя. Исходная матрица выводится на экран для наглядности. С этой матрицей необходимо произвести указанное ниже преобразование и вывести получившуюся матрицу на экран. Если требуется вместо преобразований произвести какие-либо вычисления, то на экран надо вывести результат этих вычислений. Вариант преобразования: 14.Нахождение произведения элементов столбца с максимальным номером, содержащего минимальный элемент матрицы.
2. Выполняйте отладку и оформляйте ввод! Удачи! :)
#include <iostream>
#include <ctime>
#define N 5
using namespace std;

int main()
{
srand((unsigned) time(NULL));
int a[N][N], min, index = 0, multiplication = 1;
bool flag = true;

for (int n = 0; n < N; n++, cout << endl)
{
for (int m = 0; m < N; m++)
{
a[n][m] = rand() % 9 + 1;

if (flag)
{
min = a[n][m];
flag = false;
}
else if (min > a[n][m])
{
min = a[n][m];
index = m;
}
else if (min == a[n][m] && m > index) index = m;

cout << ' ' << a[n][m];
}
}

for (int n = 0, m = index; n < N; n++) multiplication *= a[n][m];

cout << endl << "\t Result = " << multiplication;

fflush(stdin);
cin.get();
return 0;
}
BM
Baurzhan Mussin
86 176
Лучший ответ
1.

#include <iostream>

using namespace std;

unsigned dsm(unsigned x) {
return x? x % 10 + dsm(x / 10) : 0;
}

unsigned drt(unsigned x) {
return x > 9? drt(dsm(x)) : x;
}

int main() {
unsigned n;
cout << "n? ";
cin >> n;
cout << "digit root: " << drt(n) << endl;
return 0;
}
просишь помощи-получи
1.
чтобы найти все цифры числа, необходимо брать его остаток от деления на 10 и прибавлять к сумме. потом делить на 10 пока число не станет равно 0. затем повторяешь тоже самое с суммой пока она больше 9.
2.
ищешь минимальный элемент матрицы с конца (чтобы номер столбца был максимальным) при этом запоминая индекс. идёшь циклом по столбцу с запомненым индексом и перемножаешь все элементы.
Виталя Пак
Виталя Пак
1 034
Это же халява, чувак. Напиши сам. Даже мозгов особо не надо.