Index · Правила · Поиск· Группы · Регистрация · Личные сообщения· Вход

Список разделов Нужна помощь
 
 
 

Раздел: Нужна помощь Помогите пожалуйста с С++ 

Создана: 04 Декабря 2008 Чтв 7:19:33.
Раздел: "Нужна помощь"
Сообщений в теме: 11, просмотров: 1231

  1. 04 Декабря 2008 Чтв 7:19:33
    вообщем скоро сессия,и я не успею сдать сдать задачи,помогите пожалуйста если не трудно решить 2 простые задачи

    Задать массив А(5,5) с помощью генератора случайных чисел в интервале [-10; 40].Поменять местами наибольший и наименьший элементы матрицы каждого столбца

    Создать массив С(6,6) с помощью генератора случайных чисел в интервале [-20; 60].Сформировать одномерный массив из элементов созданного двумерного массива по заданному признаку: каждый элемент, которого равен сумме элементов соответствующей строки, меньших числа n;


    заранее огромное спасибо
  2. nayk


    Активист


    Более 7 лет на форумеМуж.
    06 Декабря 2008 Суб 22:56:36
    Первая:
    Код:

    #include <iostream.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <time.h>

    // генератор случайных чисел от Min до Max
    int GetRandom(int Min, int Max)
    {
       int n;
       if(Min>Max) {
        n=Max;
        Max=Min;
        Min=n;
       } else
       if(Min==Max)
       return Min;      

       n = Max - Min;
       return (rand() * n / RAND\_MAX + Min);
    }

    int main(void)
    {
       int a[5][5];
       int i, j, n;
       int iMin, iMax;
       // Задаем массив случайных чисел:
       srand( (unsigned)time(NULL) );
       cout<<"Array A(5,5) with random values [-10..40]:\n";
       for(j=0; j<5; j++)
       {
        for(i=0; i<5; i++)
        {
           a[i][j] = GetRandom(-10, 40);
           if(a[i][j] < -9)
           cout<<" ";
           else
           if( (a[i][j] >= 0) && (a[i][j] < 10))
           cout<<"   ";
           else
           cout<<"  ";
           cout<<a[i][j];
        }
        cout<<"\n";
       }
       cout<<"\n";

       // Поменять местами наибольший и наименьший элементы матрицы каждого столбца
       for (i=0; i<5; i++)
       {
         iMin=0;
         iMax=0;
         for (j=0; j<5; j++)
         {
          if(a[i][j]<a[i][iMin])
          iMin=j;
          if(a[i][j]>a[i][iMax])
          iMax=j;
         }
         n=a[i][iMin];
         a[i][iMin]=a[i][iMax];
         a[i][iMax]=n;
       }
       // Выводим на экран новый массив:
       cout<<"New array A(5,5):\n";
       for(j=0; j<5; j++)
       {
        for(i=0; i<5; i++)
        {
           if(a[i][j] < -9)
           cout<<" ";
           else
           if( (a[i][j] >= 0) && (a[i][j] < 10))
           cout<<"   ";
           else
           cout<<"  ";
           cout<<a[i][j];
        }
        cout<<"\n";
       }

       return 0;
    }


    Вторая:
    Код:

    #include <iostream.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <time.h>

    // генератор случайных чисел от Min до Max
    int GetRandom(int Min, int Max)
    {
       int n;
       if(Min>Max) {
        n=Max;
        Max=Min;
        Min=n;
       } else
       if(Min==Max)
       return Min;      

       n = Max - Min;
       return (rand() * n / RAND\_MAX + Min);
    }

    int main(void)
    {
       int с[6][6];
       int b[6];
       int n;
       
       int i, j;
       int iSum;
       // Задаем массив случайных чисел:
       srand( (unsigned)time(NULL) );
       cout<<" Array С(6,6) with random values [-20..60]:\n";
       for(j=0; j<6; j++)
       {
        for(i=0; i<6; i++)
        {
           с[i][j] = GetRandom(-20, 60);
           if(с[i][j] < -9)
           cout<<" ";
           else
           if( (с[i][j] >= 0) && (с[i][j] < 10))
           cout<<"   ";
           else
           cout<<"  ";
           cout<<с[i][j];
        }
        cout<<"\n";
       }
       cout<<"\n";

       // Ввод числа n:
       cout<<" Enter n value and press Enter: n=";
       cin>>n;
       
       // Формирование нового массива:
       for (j=0; j<6; j++)
       {
         iSum=0;
         for (i=0; i<6; i++)
         {
          if(с[i][j]<n)
          iSum+=с[i][j];
         }
         b[j]=iSum;
       }
       // Выводим на экран новый массив:
       cout<<"\n New array B(6):\n";
       for(i=0; i<6; i++)
       {
        cout<<" "<<b[i];
       }

       return 0;
    }
  3. nayk


    Активист


    Более 7 лет на форумеМуж.
    06 Декабря 2008 Суб 22:57:47
    На кого учишься то?
  4. 06 Декабря 2008 Суб 23:02:26
    nayk писал :На кого учишься то?


    огромное тебе спасибо!в транспотном на специальности вычислительные машины комплексы системы и сети
  5. 07 Декабря 2008 Вск 2:03:49
    1. Зря ты помог челу, к-ый учится НА ТАКОЙ специальности :)
    2. Там С++ и не пахнет, походу :)
  6. 07 Декабря 2008 Вск 10:48:09
    userlogoff писал :1. Зря ты помог челу, к-ый учится НА ТАКОЙ специальности :)
    2. Там С++ и не пахнет, походу :)


    я на самом деле и сам мог написать,но я не смог сформировать условие чтобы для формирования нового массива
  7. 07 Декабря 2008 Вск 16:42:26
    гнать таких из Вузов надо!
  8. 07 Декабря 2008 Вск 17:11:07
    nayk писал:Первая:
    int GetRandom(int Min, int Max)

    Я что-то не понимаю, или перестановка Min и Max совершенно излишняя?
  9. 07 Декабря 2008 Вск 23:20:31
    cherms писал :гнать таких из Вузов надо!


    на самом деле я еще не самый плачевный вариант!из группы у меня меньше всех долгов по информатике
  10. 08 Декабря 2008 Пон 21:36:07
    Парень, но это и не повод для гордости, верно? :)
    Ну если хочешь реабилитироваться, и все-таки написать прогу на С++, то попробуй соорудить из приведенного выше кода класс, напиши пару конструкторов и определения функций-членов. Вот тогда это будет СИ+плюс-плюс :)
  11. 09 Декабря 2008 Втр 19:43:36
    cherms писал :гнать таких из Вузов надо!


    ну.. как вы строго..

    может парень ещё Бил гейца переплюнет..
    дайте время - реализоваться Хех!

    \сейчас то для студента главное на месте продержаться\

    а так конечно если человек не хочет то не чего не выйдет..
    нет вернее выйдет))) но пожожое что то на то что выхожит с заднего...))))

    время покажет.

    \а дуроков больше чем достаточно - с этим согласен\