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

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

Войти
Регистрация
Восстановить пароль
 
retuse
0 / 0 / 0
Регистрация: 20.12.2013
Сообщений: 5
#1

Переписать программу с помощью функций - C++

25.12.2013, 19:20. Просмотров 146. Ответов 0
Метки нет (Все метки)

Ребята, не укладываются в голове функции.
Эту программу нужно изменить так, чтобы программный код, исполняющий действия пунктов меню, выполнялся в отдельных функциях (по одной на каждый пункт меню). Использование глобальных переменных не допускается.
Спасибо всем, кто попытается помочь.
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
#include "stdafx.h"
#include <clocale>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
#include <time.h>
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
    setlocale(LC_ALL, "rus");
 
    srand(time(NULL));
 
    int **a = NULL;
    int height = 0;
    int width = 0;
    int menu = 0;
    int done = 0;
 
    printf("Произвольные матрицы.\n");
    printf("Поменять местами максимальный и минимальный элементы в каждом столбце.\n");
    printf("\nВведите размерность матрицы\n");
    printf("\nШирина: ");
    scanf("%d", &width);
    printf("Высота: ");
    scanf("%d", &height);
    printf("\n");
 
    a = new int*[height];
    for (int i = 0; i < height; i = i + 1)
    {
        a[i] = new int[width];
    }
 
    do
    {
        printf("1. Ввести элементы матрицы с клавиатуры\n");
        printf("2. Заполнить элементы матрицы случайными значениями\n");
        printf("3. Обработать матрицу\n");
        printf("4. Вывести обработанную матрицу на экран\n");
        printf("---------------------\n");
        printf("0. Выход\n\n");
        
        scanf("%d", &menu);
 
        switch(menu)
        {
        case 1:
            printf("\n");
            printf("Введите элементы: \n");
            for (int i = 0; i < height; i = i + 1)
            {
                for (int j = 0; j < width; j = j + 1)
                {
                    printf("Элемент %d строки, %d столбца ", i+1, j+1);
                    scanf("%d", &a[i][j]);
                }
            }
            printf("\nВаша матрица:\n");
            for (int i = 0; i < height; i = i + 1)
            {
                for (int j = 0; j < width; j = j + 1)
                {
                    printf("%d ", a[i][j]);
                }
                printf("\n");
            }
            printf("\n");
 
            break;
        case 2:
            for (int i = 0; i < height; i = i + 1)
            {
                for (int j = 0; j < width; j = j + 1)
                {
                    a[i][j] = rand() % 10;
                }
            }
            
            printf("\nМатрица заполнена случайными элементами:\n");
            for (int i = 0; i < height; i = i + 1)
            {
                for (int j = 0; j < width; j = j + 1)
                {
                    printf("%d ", a[i][j]);
                }
                printf("\n");
            }
            printf("\n");
 
            break;
        case 3:
            for (int j = 0; j < width; j = j + 1)
            {
                int max=a[0][j], imax=0, min=a[0][j], imin=0;
                for (int i = 1; i < height; i = i + 1)
                {
                    if (a[i][j]<min)
                    {
                        min=a[i][j];
                        imin=i;
                    }
                    if (a[i][j]>max)
                    {
                        max=a[i][j];
                        imax=i;
                    }
                }
                a[imin][j]=max;
                a[imax][j]=min;
            }
 
            printf("Матрица успешно обработана.\n");
 
            break;
        case 4:
            printf("Обработанная матрица:\n");
 
            for (int i = 0; i < height; i = i + 1)
            {
                for (int j = 0; j < width; j = j + 1)
                {
                    printf("%d ", a[i][j]);
                }
                printf("\n");
            }
            printf("\n");
 
            break;
        case 0:
            break;
        default:
            break;
        }
    } while (menu != 0);
 
 
 
    for (int i = 0; i < height; i = i + 1)
    {
        delete [] a[i];
    }
 
    delete [] a;
 
    getchar();
 
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2013, 19:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переписать программу с помощью функций (C++):

Переписать программу с использованием функций - C++
Здравствуйте, помогите пожалуйста с функциями. Оформить каждый пункт задания в виде функции. Все необходимые данные для функций должны...

Переписать программу с использованием функций - C++
Добрый день. Помогите пожалуйста мою программу переписать так, чтобы она была с функциями. :( Она маленькая и простая. :) //...

Переделать программу с помощью функций - C++
#include &lt;iostream&gt; #include&lt;fstream&gt; using namespace std; int main() { ifstream f1; f1.open(&quot;dvymernyi_massiv.txt&quot;); if(!f1)...

Переписать программу ввода информации по книге с помощью объединений (Union) - C++
И снова здравствуйте!)) проблема следующая..не могу понять как работать с объединениями каким образом их можно заставить работать вместе со...

Переписать код с использованием функций - C++
Народ, помогите плиз. надо переписать этот код так, чтобы были функции #include &lt;windows.h&gt; #include &lt;iostream&gt; #include &lt;stdlib.h&gt; ...

Передача значений функций в главную программу, вызов функций - C++
Здравствуйте! Скорее всего, неправильно передаю значения функциям и в главную программу. Помогите найти ошибку! В итоге выводит...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2013, 19:20
Привет! Вот еще темы с ответами:

Переписать приведенный код с использованием функций - C++
Помогите переделать программу чтобы там использовалась (Functions) #include &lt;stdafx.h&gt; #include &lt;cstdlib&gt; #include &lt;iostream&gt; ...

Переписать решение системы линейных уравнений с помощью указателей - C++
Нужно написать, так сказать, модификацию задачи. В исходном коде организовать данные с помощью указателей. Помогите пожалуйста ...

Работа с массивом с помощью функций - C++
Всем доброго времени суток! Вообщем нужно выполнить следующее задание с использованием функций: В одномерном массиве, состоящем из n...

Cортировки массива c помощью функций - C++
Написать программу сортировки произвольного массива А по возрастанию или убыванию(режим сортировки задается пользователем). Написать...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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