Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2017, 20:56   #1
ArtiOnMoon
 
Регистрация: 19.12.2017
Сообщений: 4
По умолчанию Обработка массивов данных

Цель кода: Формирование массива C, состоящего из элементов cij=ai*aj, i=1...5,j=1...5. Найти min элементы массивов A и B (MinA и MinB соответственно). Если MinA>MinB, то сформировать матрицу C1 из матрицы C, заменив cij на ai, иначе на bi.
И всё было бы не так плохо если бы не надо было применять функции.

Коротко проблема и условие:
Есть массив C1(Копия C) и minA(Минимум массива А) и minB(Минимум массива B)
Если minA>minB, то мы заменяем элементы массива C1 на элементы массива A построчно, иначе на элементы массивы B по строкам.Но нельзя использовать if в функции, однако в main можно. И короче пошёл тут трабл, могу заменить либо построчно либо постолбам.
ArtiOnMoon вне форума Ответить с цитированием
Старый 19.12.2017, 20:57   #2
ArtiOnMoon
 
Регистрация: 19.12.2017
Сообщений: 4
По умолчанию

Код:
#include <stdio.h>
#include <conio.h>
#include <math.h>
#define n 5
float maxmin(float A[n])
 {
 	    	int j,i;
 float min;
 printf("\n");
 min = A[0];
for (i = 0; i<n; i++)
  {
    if (A[i]<min)
    {
      min= A[i];
    }
  } 
   return min;
  
}
  float form(float a[n],float c1[n][n],float c[n][n])
    	{
    	int j,i;
           for ( i = 0; i < n; i++) 
  {
for ( j= 0; j < n; j++) 
{
c1[i][j]=a[i,j];
}
}
return c1[n][n];
}
int main()
{
  float a[n] ,b[n], c[n][n],c1[n][n],minA,minB; 
  int i, j;
  // Ввод элементов массива A
       printf("Value: Massive A");
       printf("\n");
  for (i = 0; i<n; i++)  // цикл по строкам
  {
    scanf("%f", &a[i]);
  }
    //массива B
   printf("\n");
  printf("\n");
  printf("Massive B");
  printf("\n");
  for (i = 0; i<n; i++)  // цикл по строкам
  {
      b[i]=sin(i+1)*sin(i+1)+0.5;
      printf("%.1f ", b[i]);
  }
  //Массив C//
   printf("\n");
  printf("\n");
  printf("Massive C");
    for (i = 0; i < n; i++) 
  {
  	printf("\n");
for (j = 0; j < n; j++) 
{
c[i][j]=a[i]*a[j];
printf("%.1f ", c[i][j]);
}
}
 // Поиск минимального значения A
minA=maxmin(a);
 printf("\n");
printf("Min A");
printf("\n");
printf("%.1f ", minA);
   // Поиск минимального значения B
minB=maxmin(b);
printf("\n");
printf("Min B");
printf("\n");
printf("%.1f ", minB);
    //Сравнение min A и min B//
  printf("\n");
  printf("\n");
  printf("Massive C1");
     for (i = 0; i < n; i++)
for (j = 0; j < n; j++) 
c1[i][j]=c[i][j];
if (minA>minB)
form(a,c1,c);
else
form (b,c1,c);
           for ( i = 0; i < n; i++) 
  {
  	printf("\n");
for ( j = 0; j < n; j++) 
{
printf("%.1f ", c1[i][j]);
}
}
getch();
}
ArtiOnMoon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка массивов данных. Надежда95 Помощь студентам 1 09.04.2015 19:44
обработка массивов данных valentina-mo Помощь студентам 0 20.11.2012 08:38
Обработка массивов данных MASOFF Помощь студентам 0 21.05.2011 11:51
Обработка массивов данных Student1 Помощь студентам 6 03.01.2011 01:30
Обработка массивов данных ALEX_АНДр Помощь студентам 6 06.04.2009 18:59