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

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

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

Переписать код без использования функций - C++

06.12.2013, 20:26. Просмотров 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
#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <iomanip>
using namespace std;
 
// размерность матрицы
const int M = 3;
// считает сумму элементов указанной строки
int getRowSum(const int razmer, const int rowNum, const int matrix[M][M]);// 2) строки 3)
// считает сумму элементов указанного столбца
int getColumnSum(const int razmer, const int colNum, const int matrix[M][M]);
 
// получение целого числа из консольного ввода с валидацией
int GetIntegerValue();
 
int _tmain(int argc, _TCHAR* argv[])
{ 
    setlocale(0,"");
    
    int matrix[M][M];
        for ( char c = '1'; c != 27; cout << "Для завершения работы программы нажмите Esc" << endl, c = _getch() )
        { 
            cout << "Введите построчно через пробел элементы матрицы размером [" << M << "][" << M << "]:" << endl;
            for (int i = 0; i < M; i++)
            {
                cout << "Строка " << i + 1 << ": ";
                for (int j = 0; j < M; j++) 
                {
                    // читаем вводимые данные
                    matrix[i][j] = GetIntegerValue();
                }
                cout << endl;
            }
 
            // вычисляем сумму первой строки
            int summ = getRowSum(M, 0, matrix);
            bool result = true;
            for (int i = 0; i < M; i++){
                // вычисляем 
                if (getRowSum(M, i, matrix) != summ || getColumnSum(M, i, matrix) != summ){
                    result = false;
                    break;
                }
            }
            cout << "Матрица" << (result ? " " : " НЕ ") << "является магическим квадратом" << endl;
        }
        return 0;
}
 
int GetIntegerValue()
{
    int input;
    while (!(cin >> input))
    {
        cout << endl<< "Введено неправильное значение, повторите ввод:" << endl;
        cin.clear();
        fflush(stdin);
    }
    return input;
    
}
 
int getRowSum(const int razmer, const int rowNum, const int matrix[M][M])
{
    int result = 0;
    for (int i = 0; i < razmer; i++) {
        result += matrix[rowNum][i];
    }
 
    return result;
}
 
 
int getColumnSum(const int razmer, const int colNum, const int matrix[M][M])
{
    int result = 0;
    for (int i = 0; i < razmer; i++) {
        result += matrix[i][colNum];
    }
    return result;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2013, 20:26     Переписать код без использования функций
Посмотрите здесь:

Переписать код без использования операций сдвига и "битового and" C++
C++ Как написать генератор чисел без использования стандартных функций?
БЕЗ использования библиотечных функций C++
Помогите переписать программу без использования индексации C++
Монотонная последовательность без использования функций C++
C++ Графы, переписать программу без использования iterator-ов
Работа со строками. Переписать программу без использования библиотеки <sstream> C++
C++ Преобразование char в int без использования функций библиотеки С
C++ Можете переписать код без указаетелей и без printf\scanf?
C++ Вывести слова, содержащие гласные. Без использования встроенных функций
C++ Переписать программу без использования указателей
C++ Вывод данных в двоичном виде без использования интегрированных функций

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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