Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
compiler90
Сообщений: n/a
#1

Функцию, принимающую в качестве параметра количество строк и столбцов в таблице умножения - C++

04.06.2012, 07:17. Просмотров 635. Ответов 4
Метки нет (Все метки)

Пожалуйста помогите, завтра экзамен!!!

Написать функцию, принимающую в качестве параметра количество строк и столбцов в таблице умножения.
Функция должна создать двумерный массив целых чисел размера, достаточного для хранения таблицы умножения и заполнить массив элементами таблицы умножения.
Функция должна вернуть адрес первого элемента массива.
Заголовок функции:
int * get_multiplication_table (unsigned int count);
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2012, 07:17     Функцию, принимающую в качестве параметра количество строк и столбцов в таблице умножения
Посмотрите здесь:

Как передать функцию в качестве параметра? C++
C++ Передача файла в функцию в качестве параметра
Функция, принимающая в качестве параметра функцию C++
Написать шаблонную функцию, принимающую три параметра и возвращающую их среднее арифметическое как float C++
C++ Составить функцию, принимающую переменное количество параметров
Передача массива в функцию в качестве параметра C++
Написать функцию, принимающую в качестве параметра одномерный массив C++
Передача файла в функцию в качестве параметра C++
Написать функцию, имеющую одну реализацию, но принимающую в качестве аргументов разные типы C++
Указатель на функцию в качестве параметра функции C++
C++ Передать функцию в качестве параметра
C++ Написать функцию, принимающую в качестве параметра массив целых чисел

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Глупец
23 / 23 / 1
Регистрация: 17.05.2011
Сообщений: 141
04.06.2012, 07:36     Функцию, принимающую в качестве параметра количество строк и столбцов в таблице умножения #2
если правильно понял...
C++
1
2
3
4
5
6
7
8
9
10
11
int * get_multiplication_table (unsigned int count)
{
    int** tab = new int*[count];
    for(int i = 0; i < count; i++)
    {
        tab = new int[count];
        for(int ii = 0; ii < count; ii++)
            tab[i][ii] = i * ii;
    }
    return *tab;
}
Байт
Эксперт C
 Аватар для Байт
15088 / 9490 / 1394
Регистрация: 24.12.2010
Сообщений: 17,579
04.06.2012, 11:49     Функцию, принимающую в качестве параметра количество строк и столбцов в таблице умножения #3
Глупец, Я не уверен, что после использования этой функции, можно будет получить доступ ко всем элементам таблицы. Ведь
C++
1
tab = new int[count];
выделяет память кусками совершенно хаотично и кусок выделенный в очередном проходе цикла, совершенно не обязательно будет примыкать к предыдущему!
Мое предложение
C++
1
2
3
4
5
6
7
8
9
10
int * get_multiplication_table (unsigned int count)
{
    int* tab = new int[count*count];
    for(int i = 0; i < count; i++)
    {
         for(int ii = 0; ii < count; ii++)
            tab[i*count + ii] = (i+1) * (ii+1);  // Умножение на 0 вряд ли интересно
    }
    return tab;
}
David Sylva
 Аватар для David Sylva
1284 / 946 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
04.06.2012, 13:43     Функцию, принимающую в качестве параметра количество строк и столбцов в таблице умножения #4
Можно вот так, всё не нужное можешь удалить.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <iostream> 
using namespace std; 
int *get_multiplication_table (unsigned int); 
 
int main() 
{   
    setlocale(0, "rus");
    int number; 
    cout << "Введите число " << endl; 
    cin >> number;  
    get_multiplication_table(number);  
    
 
} 
 int *get_multiplication_table (unsigned int count) 
{ 
    int **array; 
    unsigned int i, j;
    array = new int*[count+1]; 
    for ( i = 0; i <= count; i++) 
        array[i] = new int [count+1]; 
 
    for ( i = 0; i <= count; i++) // заполняем элементы значениями
        for ( j = 0; j <= count; j++) 
            array[i][j] = i * j;  
 
    for ( i = 0; i <= count; i++) // выводим таблицу умножения
    {
        for ( j = 0; j <= count; j++) 
            cout << i << "*" << j << " = " << array[i][j] << "   " << endl;
        cout << endl; 
    } 
    return *array; 
}
Байт
Эксперт C
 Аватар для Байт
15088 / 9490 / 1394
Регистрация: 24.12.2010
Сообщений: 17,579
04.06.2012, 15:11     Функцию, принимающую в качестве параметра количество строк и столбцов в таблице умножения #5
David Sylva, Замечания те же, что и к предыдущему посту.
Yandex
Объявления
04.06.2012, 15:11     Функцию, принимающую в качестве параметра количество строк и столбцов в таблице умножения
Ответ Создать тему
Опции темы

Текущее время: 00:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru