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

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

Восстановить пароль Регистрация
 
cHuVbaka
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 120
05.03.2014, 22:32     Пофиксить код для коректного вызова функции #1
Есть код, нужно поправить функцию Vivod, чтобы корректно работала...не видно переменных
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
#include <conio.h>
#include <iostream>
#include <string.h>
using namespace std;
struct avtobus
{
    int number;//номре рейса
    char type[30];//тип автобуса
    char punkt[30];//пункт прибития
    int timeotprm;//минуты отправления
    int timeotprh;//часы отправления
    int timeprm;//минуты прибития
    int timeprh;//часы прибития
};
void Vvod(avtobus *arr, int n)//функция для ввода данных с клавиатуры
{
    for(int i=0;i<n;i++)//
    {
        cout<<"Vvedite nomer ";
        cin>>arr[i].number;//вводим номер
        cout<<"Vvedite type avtobusa ";
        cin>>arr[i].type;//тип
        cout<<"Vvedite punkt ";
        cin>>arr[i].punkt;//пункт
        cout<<"Vvedite chasi otpravleniya ";
        cin>>arr[i].timeotprh;//время отправления
        cout<<"Vvedite minuti otpravleniya ";
        cin>>arr[i].timeotprm;//
        cout<<"Vvedite chasi pribitiya ";
        cin>>arr[i].timeprh;//время прибития
        cout<<"Vvedite minuti pribitiya ";
        cin>>arr[i].timeprm;//
        cout<<"\n";
    }
}
void Vivod(avtobus *arr, int n)
{
                    cout<<"Avtobus:\n ";//
                    cout<<"Nomer "<<arr[i].number;//выводим номер
                    cout<<" Type "<<arr[i].type;
                    cout<<" Vremya otpravleniya "<<arr[i].timeotprh<<":"<<arr[i].timeotprm;//время отправления
                    cout<<" Vremya pribitiya "<<arr[i].timeprh<<":"<<arr[i].timeprm;//время прибития
                    cout<<"\n";
}
void Poisk(avtobus *arr, int n)//функция для поиска нужных рейсов
{
 
        int minuts,hours;//минуты и часы
        char punkt[30];//пункт назначения
        cout<<"Vvedite punkt ";
        cin>>punkt;//вводим пункт, и время, до которого надо там быть
        cout<<"Vvedite chasi pribitiya ";
        cin>>hours;//
        cout<<"Vvedite minuti pribitiya ";
        cin>>minuts;//
        for(int i=0;i<n;i++)//идем по массиву структур (рейсов)
        {
            if(!strcmp(punkt,arr[i].punkt))//если пункт совпал
            {
                if(arr[i].timeprh<hours)//сравниваем время - и если всё ок - выводим инфу про рейс на экран
                {
                Vivod(arr,n);
                }
                if((arr[i].timeprh=hours)&&(arr[i].timeprm<minuts))//
                {
                Vivod(arr,n);
                }
            }
        }
}
 
int main()
{
        int n;//количетсов рейсов
        avtobus *arr;//массив рейсов
        cout<<"Vvedite kolichestvo reysov ";
        cin>>n;//вводим длину базы
        arr=new avtobus[n];//выделяем память
        Vvod(arr,n);//вызываем ввод с клавиатуры
        Poisk(arr,n);//вызываем поиск
        delete arr;//
        getch();//
        return 0;
}
Добавлено через 20 минут
уточню, как из этого сделать функцию для 62 66 строчки...
cout<<"Avtobus:\n ";//
cout<<"Nomer "<<arr[i].number;//выводим номер
cout<<" Type "<<arr[i].type;
cout<<" Vremya otpravleniya "<<arr[i].timeotprh<<":"<<arr[i].timeotprm;//время отправления
cout<<" Vremya pribitiya "<<arr[i].timeprh<<":"<<arr[i].timeprm;//время прибития
cout<<"\n";
Добавлено через 2 часа 40 минут
апп
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.03.2014, 22:32     Пофиксить код для коректного вызова функции
Посмотрите здесь:

C++ Ошибка вызова шаблонной функции
C++ Встраивание результата функции в место ее вызова
Функции. Синтаксис объявления и вызова C++
Указатель на привязанную функцию можно использовать только для вызова функции C++
C++ Абстракция вызова функции
C++ нужно чтобы функция располагалась до ее вызова, после ее вызова и в другом файле. Как это сделать?
Не понятный глюк вызова перегруженной функции C++
C++ Вызова функции

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
05.03.2014, 23:19     Пофиксить код для коректного вызова функции #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
самое быстрое:
1. исправляем имя переменной в 36 строке с n на i:
void Vivod(avtobus *arr, int i)
2. в местах вызова этой функции (строки 62 и 66) так же n на i:
Vivod(arr,i);
Yandex
Объявления
05.03.2014, 23:19     Пофиксить код для коректного вызова функции
Ответ Создать тему
Опции темы

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