Н
нини
помогите пож-та разобраться.
поставлена задача: Задана вещественная матрицаN[4][2]. Переставить вторую и третью строку и найти максимальный элемент в каждой строке из этих строк.
необходимы два варианта решения, первый с помощью указателей. вот есть такой вариант решения, если можно покритикуйте, если что не так B) буду благодарна :blink:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void main()
{
int i, j;
float m[4][2];
for (i = 0; i < 4; i++)
{
for (j = 0; j < 2; j++)
{
printf("string - %d, column - %d \n", i+1, j+1);
scanf("%f",&m[j]);
}
}
int s=2; //номер строки
float tmp[2]={m[s-1][0],m[s-1][1]}; //сохраняем 2-ю строку;
s-1 - т.к. считается с 0
m[s-1][0]=m[0];m[s-1][1]=m[1]; //во 2-ю строку записываем 3-ю строку
m[0]=tmp[0];m[1]=tmp[1]; //в 3-ю строку записываем сохраненную 2-ю
float max;
for (i = 0; i < 4; i++)
{
max = m[0]; // инициализируем переменную max первым
числом из строки массива
for (j = 0; j < 2; j++)
{
if(max < m[j])
{
max = m[j];
}
}
// вывод максимально числа
printf("\n в строке %d max = %10.2f \n", i+1, max);
}
getch(); //ожидаем нажатия клавиши
}
а далее необходимо решить эту же задачу с использованием двух функций. В главной функции(main()) с помощью датчика случайных чисел задать два массива, соответствующие варианту, передать каждый из массивов во вторую функцию(для каждого массива свой вызов функции). Алгоритм второй функции соответствует вычислениям, проводимым с массивами. Результаты передаются в главную функцию, где он и выводятся на экран монитора.
подскажите, как и с чего начинать?
поставлена задача: Задана вещественная матрицаN[4][2]. Переставить вторую и третью строку и найти максимальный элемент в каждой строке из этих строк.
необходимы два варианта решения, первый с помощью указателей. вот есть такой вариант решения, если можно покритикуйте, если что не так B) буду благодарна :blink:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void main()
{
int i, j;
float m[4][2];
for (i = 0; i < 4; i++)
{
for (j = 0; j < 2; j++)
{
printf("string - %d, column - %d \n", i+1, j+1);
scanf("%f",&m[j]);
}
}
int s=2; //номер строки
float tmp[2]={m[s-1][0],m[s-1][1]}; //сохраняем 2-ю строку;
s-1 - т.к. считается с 0
m[s-1][0]=m
m
float max;
for (i = 0; i < 4; i++)
{
max = m[0]; // инициализируем переменную max первым
числом из строки массива
for (j = 0; j < 2; j++)
{
if(max < m[j])
{
max = m[j];
}
}
// вывод максимально числа
printf("\n в строке %d max = %10.2f \n", i+1, max);
}
getch(); //ожидаем нажатия клавиши
}
а далее необходимо решить эту же задачу с использованием двух функций. В главной функции(main()) с помощью датчика случайных чисел задать два массива, соответствующие варианту, передать каждый из массивов во вторую функцию(для каждого массива свой вызов функции). Алгоритм второй функции соответствует вычислениям, проводимым с массивами. Результаты передаются в главную функцию, где он и выводятся на экран монитора.
подскажите, как и с чего начинать?