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

Разбить программу на функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сложение больших чисел http://www.cyberforum.ru/cpp-beginners/thread848867.html
Мне необходимо сложить два больших числа которые не входят ни в один тип данных, числа могут быть как положительные так и отрицательные не могу реализовать язык не знаю
C++ ошибочки. как разобраться?найти точки перегиба нужно найти точки перегиба функции..видела гдето у вас здесь на форуме подобное но сама все равно не могу одолеть. Дословно не помню,но преподаватель сказала что для поиска лучше искать точки перегиба исходя из значений, при которых поменяется знак производной. Из школы знаю,что если для функции y = f (x) в некоторой точке xо f² (xo ) = 0 и при переходе через эту точку меняет свой знак... http://www.cyberforum.ru/cpp-beginners/thread848865.html
Критику в студию C++
Доброго всем времени суток! Я вот написал такой себе класс матриц, прошу оценить его и посоветовать что можно улучшить или изменить, как повысить быстродействие или, возможно, что-то надо добавить. Знаю,что надо сделать шаблон класса для разных типов данных, но дабы сейчас все было красиво и хорошо не загрязнял этим код! Любые дельные советы будут "лайкнуты"! matrix.h //класс матриц...
C++ Виртуальная функция не хочет перекрываться
Возникла следующая ситуация, имеется базовый класс с виртуальной функцией, и два производных один с ним в одном файле, другой в соседнем, в обоих перекрываю виртуальный метод, ( есть дефолтная реализация оного), в итоге при вызове данного метода от объектов производных классов, только один из них ( тот который в одном файле) перекрывает дефолтный метод, что я делаю не так ?
C++ Алгоритм сортировки http://www.cyberforum.ru/cpp-beginners/thread848840.html
Дан одномерный масив. мне в нем нужно отсортировать по возростанию только те числа масива которые простые, а остальные оставить на той же позиции как и были. вот так я смотрю простое число или не int isSimple (int x) { int retVal = 1; int i = 2; while (i<=sqrt((double)x) && retVal==1)
C++ Класс домов и класс улиц для учета поступлений квартплаты. Массив Задание: вырезано Файл StdAfx.h #pragma once #include "targetver.h" #include <stdio.h> подробнее

Показать сообщение отдельно
keks99
1 / 1 / 0
Регистрация: 10.01.2010
Сообщений: 10

Разбить программу на функции - C++

26.04.2013, 00:02. Просмотров 303. Ответов 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
#include <iostream>
#include <cmath>
#include <conio.h>
 
int main()
{
    int n, i, j = 0, abssum = 0, null = 0;
    printf("Vvedite kolichestvo elemntov massiva\n");
    scanf ("%d",&n);
    int *mas = new int[n]; // динамический массив
    for(i=0; i<n; i++)
    {
        printf("\nVvedite %d elemnt massiva\n",i+1);
        scanf("%d",&(mas[i]));
    }
 
// Step #1
    for(i=1; i<n; i++)
        if(abs(mas[i]) < abs(mas[j]))
            j = i;
    printf("\n\n\nMinimalnii po moduly element: %d\n",mas[j]);
 
// Step #2
    i=0;
    for(i=0;i<n;i++)
    {
        if(mas[i] == 0)
            null = 1;
        if(null == 1)
            abssum += abs(mas[i]);
    }
    if(null == 1)
        printf("\nSumma modulei elemntov massiva posle pervogo nulya: %d\n",abssum);
    if(null == 0)
        printf("\nElementov, ravnih nuly net!\n");
 
// Step #3
    int *tempmas = new int[n];
    i=0, j =0;
    for (i=0; i<n; i++) 
        if (i%2 == 0) // четные позиции, деление с остатком
            tempmas[j++] = mas[i];
 
    printf("\nPreobrazovanni massiv:\n");
 
    for(i=0; i<n; i++)
    {
        if (i%2 != 0) // нечетные
            tempmas[j++] = mas[i]; 
        mas[i] = tempmas[i]; // перезапись массива
        printf("\n%d",mas[i]);
    }
 
    getch();
    return 0;
}

я думаю программу стоить разбить на 4 функции: ввод, поиск минимума, сумма, сортировка и вывод. застрял сразу на 1ом, запутался в указателях

Кликните здесь для просмотра всего текста

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
#include <iostream>
#include <cmath>
#include <conio.h>
 
void InPut(int *, int);
void Min();
void AbsSum();
void Sort();
 
 
int main()
{
    int n, i, j, abssum = 0, null = 0;
    int *mas; // динамический массив
    printf("Vvedite kolichestvo elemntov massiva\n");
    scanf ("%d",&n);
 
    InPut(mas, n);
 
// Минимальный элемент
    for(i=1; i<n; i++)
        if(abs(mas[i]) < abs(mas[j]))
            j = i;
    printf("\n\n\nMinimalnii po moduly element: %d\n",mas[j]);
 
// Сумма модулей элементов после 0
    i=0;
    for(i=0;i<n;i++)
    {
        if(mas[i] == 0)
            null = 1;
        if(null == 1)
            abssum += abs(mas[i]);
    }
    if(null == 1)
        printf("\nSumma modulei elemntov massiva posle pervogo nulya: %d\n",abssum);
    if(null == 0)
        printf("\nElementov, ravnih nuly net!\n");
 
// Сортировка и вывод
    int *tempmas = new int[n];
    i=0, j =0;
    for (i=0; i<n; i++) 
        if (i%2 == 0) // четные позиции, деление с остатком
            tempmas[j++] = mas[i];
 
    printf("\nPreobrazovanni massiv:\n");
    for(i=0; i<n; i++)
    {
        if (i%2 != 0) // нечетные
            tempmas[j++] = mas[i]; 
        mas[i] = tempmas[i]; // перезапись массива
        printf("\n%d",mas[i]);
    }
 
    getch();
    return 0;
}
 
void InPut(int *mas, int n)
{
    for(int i=0; i<n; i++)
    {
        printf("\nVvedite %d elemnt massiva\n",i+1);
        scanf("%d",&(mas[i]));
    }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru