Перегрузка, вопрос

Тема в разделе "C/C++/C#", создана пользователем CppManiac, 17 апр 2010.

  1. CppManiac

    CppManiac Гость

    Есть такое задание, а как его сделать не имею понятия:
    С помощью механизма перегрузки функций организовать заполнение массива:
    1) с помощью датчика случайный чисел;
    2) пользователем с консоли;
    3) с помощью арифметической прогрессии;
    4) на основе другого массива.
    Как по отдельности сделать понятно, а вот как сделать перегрузкой? как определить что нам нужно? прогрессия, random и т.д.
    Помогите пожалуйста
     
  2. etc

    etc Гость

    Начните с изучеия что есть перегрузка.
     
  3. CppManiac

    CppManiac Гость

    Что такое перегрузка я уже читал, и например если задача найти сумму то знал бы как делать, а здесь не могу понять самого условия, растолкуйте что к чему
     
  4. etc

    etc Гость

    Расскажите.
     
  5. CppManiac

    CppManiac Гость

    я не всё про сумму знаю, но допустим передаём a и b в функцию sum, и идёт как бы перечисление ф-ий: int sum(int a, int :sorry:, double sum(double a, int B), double sum(int a, double B), double sum(double a, double B), как то так, а вот сам ввод и послед. действия, т.е. определение какими являются a b, не знаю что да как.
    ps.: расслабьтесь, не надо сразу так резко "расскажите", если мне не дошёл этот материал, это не значит что я совсем туп, просто иногда методы преподования не самые лучшие
     
  6. vital

    vital Больной Компом Детектед

    Регистрация:
    29 янв 2006
    Сообщения:
    2.468
    Симпатии:
    27
    Конечно, всегда виновать препод, ага.. Так вот, вы нифига не знаете, что есть перегрузка - а знали бы, не было бы первоначального вопроса.
    ээ.. Как бе.. Вы же знаете когда в каждой конкретной ф-ии каике передаются параметры. Что еще мешает??
     
  7. CppManiac

    CppManiac Гость

    мда злые тут программеры)
    Просто реально хороших примеров у нас небыло, сейчас вроде кое как врубился, прочитав немало форумов
     
  8. CppManiac

    CppManiac Гость

    всё равно не до конца понимаю я: :rolleyes:
    Код (C++):
    #include <stdio.h>
    #include <time.h>
    #include <stdlib.h>
    //// для консоли
    //void Fill(int *s, int size){
    //  for(int i=0;i<size;i++)
    //  {
    //      scanf(" %d ",&s[i]);
    //  }
    //  printf("\n" );
    //  for(int i=0;i<size;i++)
    //  {
    //      printf(" %d ", s[i]);  
    //  }
    //      printf("\n" );
    //}

    // для генератора случайных чисел
    //void Fill(int *s, int size, int max){
    //
    //  for(int i=0;i<size;i++)
    //  {
    //     
    //     
    //           s[i]=rand()%max;
    //          printf(" %5d ", s[i]);
    //         
    // 
    //  }
    //  printf(" \n " );
    //}

    //для прогрессии
    void Fill(int *s, int size, int first, int step){
    for(int i=1;i<=size;i++)
    {
    s[i]=first+(i-1)*step;
    printf("%d ", s[i]);
    }
    printf(" \n " );
    }
    //// для массива
    //void Fill(int *s, int size, int *source, int sourcesize);

    void main(){
    srand(time(0));
    int max;
    int first, step;
    const int n=5;
    int a[n];
    /*scanf("%d",&max); :KillMe:  например для второго случая так, для третьего чуть ниже, а как объеденить?/*
    /*Fill(&a[0],n,max);*/

    scanf("%d %d",&first,&step);
    Fill(&a[0],n,first,step);

    }
    ведь для каждой ф-ии свои параметры и вызов этой ф-ии, а как это всё связать?
     
  9. CppManiac

    CppManiac Гость

    а без case можно какнибудь, т.е. без выбора?
     
Загрузка...

Поделиться этой страницей