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

Файлы и функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ from C# to C++ http://www.cyberforum.ru/cpp-beginners/thread788086.html
Собственно сабж. Есть код на шарпе, хотелось бы перевести его на плюсы, но своих мозгов не хватает (или опыта?). using System; using System.Collections.Generic; using System.Linq; using...
C++ Для чего нужен шаблон <typename T> Здравствуйте. template <typename T> T CLAMP(const T& value, const T& low, const T& high) { return (value < low) ? low : ((value > high) ? high : value); } Из книги я понял,что это... http://www.cyberforum.ru/cpp-beginners/thread788026.html
Базовая графика в С++ C++
Всем доброго времени суток, уважаемые товарищи заслуженные программисты! С++ изучаю самостоятельно, как и программирование вообще, потому, столкнувшись с вопросом, не имею возможности обратиться...
C++ Осуществите в классе перегрузку метода proizved() c различным количеством параметров
Осуществите в классе перегрузку метода proizved() c различным количеством параметров так, что если параметров два, они перемножаются, если параметров 3, то первые два аргумента перемножается, а...
C++ как мне определить правильно параметры процедуры, чтобы с меняло свое значение http://www.cyberforum.ru/cpp-beginners/thread787938.html
void strfun(int a, int b, int c) { c = a + b; } int main() { int a=5, b=6, c=0; strfun(a, b, c); cout << c << endl;
C++ Эмулятор Нормальных Алгорифмов Маркова У меня тема курсовой - эмулятор нормальных алгорифмов Маркова. Я понял, как это все реализуется, но вот как написать на C++ - понятия не имею. Нужно написать такую прогу, чтобы можно было свои... подробнее

Показать сообщение отдельно
СПП
25 / 25 / 2
Регистрация: 15.12.2012
Сообщений: 71
17.02.2013, 05:28
Цитата Сообщение от maddoxx Посмотреть сообщение
Помогите пожалуйста вынести любую из функций в отдельный файл
Что-то вроде этого??? - каждая функция в отдельном файле, я думаю вы об этом просили

main.cpp
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
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <stdlib.h>
 
#include "struct_train.h"
#include "input.cpp"
#include "output.cpp"
#include "sort.cpp"
 
#define size 2
#define buf 256
#define dSize 10
#define NULL 0
 
 
extern void input(train *mas);
extern void output(train *mas);
extern void sort(train *mas);
 
int main()
{ 
    train *mas;
    mas = new train [size]; 
    if (mas != NULL)
    {
        input(mas);
        sort(mas);
        output(mas);
    }
    else
        printf("\nMenory error!\n");
    _getch();
 
return 0;
}
train.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#ifndef     train_h
#define     train_h
 
#define size 2
#define buf 256
#define dSize 10
#define NULL 0
 
struct train
{
    char name[buf];
    int  number;
    char date[dSize];
}; 
 
 
#endif  // train_h
input.cpp
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
#ifndef     input_cpp
#define     input_cpp
 
#include "struct_train.h"
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <stdlib.h>
 
#define size 2
#define buf 256
#define dSize 10
#define NULL 0
 
void input(train *mas)
{
    register int i,j;
    printf("\nInput information\n");
    for(i=0; i<size; i++)
    {
        fflush(stdin);
        printf("\n\nInput name for element [%d]: ",i+1);    //Считываем название поезда до нажатия Enter или до конца буфера (256 символов)
        for(j=0; j<buf; j++)
        {
            char tmp;
            scanf("%c",&tmp);
            if (tmp == '\n')
            {
                mas[i].name[j] = '*';
                j=buf;
            }
            else
                mas[i].name[j] = tmp;
        }
 
        fflush(stdin);
        printf("Input number for element [%d]: ",i+1);      //Считываем номер поезда
        scanf("%d",&mas[i].number);
 
        fflush(stdin);
        printf("Input date for element [%d] (format xx.xx.xxxx): ",i+1);    //Считываем дату отправления (10 символов с разделителем '.')
        for(j=0; j<dSize; j++)
            scanf("%c",&mas[i].date[j]);
    }
}
 
#endif  // input.cpp
output.cpp
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
#ifndef     output_cpp
#define     output_cpp
 
#include "struct_train.h"
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <stdlib.h>
 
#define size 2
#define buf 256
#define dSize 10
#define NULL 0
 
void output(train *mas)
{
    register int i,j;
    system("cls");
    printf("\nOutput information\n");
    for(i=0; i<size; i++)
    {
        printf("\n\nElement [%d]",i+1);         //Какой номер елемента выводим
        printf("\nName: ");                     //Выводим имя
        for(j=0; j<buf; j++)
        {
            if (mas[i].name[j] == '*')          //До первого искуственно образованного символа конца строки
                j = buf;
            else
                printf("%c",mas[i].name[j]);
        }
        printf("\nNumber: %d",mas[i].number);   //Выводим номер
        printf("\nDate: ");                     
        for(j=0; j<dSize; j++)
            printf("%c",mas[i].date[j]);            //Выводим дату
    }
}
 
#endif // output_cpp
sort.cpp
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
#ifndef     sort_cpp
#define     sort_cpp
 
#include "struct_train.h"
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <stdlib.h>
 
#define size 2
#define buf 256
#define dSize 10
#define NULL 0
 
void sort(train *mas)
{
    register int i,j;
    for(i=0; i<size-1; i++)
        for(j=i+1; j<size; j++)
            if (mas[i].name[0] > mas[j].name[0])
            {
                fflush(stdin);
                train swap = mas[i];
                mas[i] = mas[j];
                mas[j] = swap;
            }
}
 
#endif  // sort_cpp
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru