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

Описание класса с именем TRAIN - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.56
felicita_091
 Аватар для felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
11.03.2013, 13:00     Описание класса с именем TRAIN #1
Задание 1: Описание класса.
Запишите описание класса с именем TRAIN, содержащего следующие поля:
1)название пункта назначения;
2)номер поезда;
3)время отправления.
Скройте элементы-данные от пользователя, предоставив интерфейс доступа к полям посредством открытых методов (предусмотрите объявление двух методов, один из которых присваивает значения полям класса, а другой – выводит значения этих свойств на экран).

Объявите массив объектов созданного класса.
Задание 2: Реализация методов класса.
Напишите реализацию методов, предоставляющих доступ к данным класса. Отобразите в программе работу этих методов для объявленного ранее массива объектов.
Задание 3: Работа с объектами.
Добавьте в программу метод, который выводит номер поезда на экран, если время, введенное с клавиатуры, совпадает со временем отправления объекта.
Задание 4: Указатель на объект.
Добавьте в программу объявление указателя на объект и продемонстрируйте для него вызовы методов.



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
#include <stdio.h>
#include <string.h>
#include <locale.h>
const int n = 6;  //Число элементов массива 
    struct Train  //Структура
{
    char pn [20];
    unsigned int num;
    char time [5];
};  
    int main(void)
{
    setlocale(LC_ALL,"Russian");
    Train a[n];
    int i = 0;
    for (i=0; i<n; i++) //Ввод данных
    {
        printf ("Введите пункт назначения: ");
        scanf("%s", &a[i].pn);
        printf ("Введите номер поезда: ");
        scanf("%d", &a[i].num);
        printf ("Введите время отправления: ");
        scanf("%s", &a[i].time);
    }
    Train buf; //Аргумент buf указывает на область памяти, предназначенную для размещения принимаемых данных
    int k; 
    for (i=0; i < n-1; i++)
        for (k=0; k < n-1; k++)
            if (strcmp (a[k].time, a[k+1].time)>0) //Посимвольное сравнение строк
            {
               buf = a[k];
               a[k] = a[k+1];
               a[k+1] = buf;
            }
    char pp[20]; //Поиск поезда
    printf ("\nПоиск поезда \nВведите пункт: \n"); 
    scanf("%s", pp);    
    bool f = false; 
    for (i=0; i<n; i++)
        if (strcmp (a[i].pn, pp) == 0)  //Вывод информации при совпадениях
        {
            printf ("Поезд \tВремя:\n");
            printf("%u\t", a[i].num);
            printf("%s\t", a[i].time);
            printf("\n");
            f = true;
        }
    if (!f) 
        printf ("Нет таких поездов"); //Сообщение при отсутствии необходимых данных
    getchar();
    return 0;
Где здесь ошибка??
Миниатюры
Описание класса с именем TRAIN  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2013, 13:00     Описание класса с именем TRAIN
Посмотрите здесь:

C++ Описать класс с именем TRAIN
Описать структуру с именем TRAIN C++
Определить класс с именем TRAIN C++
Описать структуру с именем TRAIN C++
C++ Запишите описание класса с именем TOVAR
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
11.03.2013, 13:04     Описание класса с именем TRAIN #2
Ошибка в потерянном бинаре (касательно скрина). Компилять надо.
felicita_091
 Аватар для felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
11.03.2013, 13:12  [ТС]     Описание класса с именем TRAIN #3
все я нашла другой способ
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
11.03.2013, 13:14     Описание класса с именем TRAIN #4
Цитата Сообщение от felicita_091 Посмотреть сообщение
я нашла другой способ
И действительно, можно не компилять, наверное...
felicita_091
 Аватар для felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
11.03.2013, 13:15  [ТС]     Описание класса с именем TRAIN #5
Кликните здесь для просмотра всего текста
Train.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
#include "Train.h"
#include <iostream>
using namespace std;
 
Train::Train(void)
{
}
 
Train::~Train(void)
{
}
 
void Train::putdata () const{
    cout << "\n Название пункт назначение : " << punkt << "\n Номер поезда: " << 
            code << "\n Время отправления: " << time << endl;
}
 
void Train::getdata(){
    cout << "\n Введите название пункт назначение: ";  cin >> punkt;
   cout << " Введите номер поезда: ";
   cin >> code;
   cout << " Введите время отправления: ";  cin >> time; 
}
Кликните здесь для просмотра всего текста
Train.h


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#pragma once
 
class Train
{
        char punkt[20];
        int code;
        double time;
public:
    void getdata();    // функция для ввода данных
    void putdata () const;  
    Train(void);
    ~Train(void);
};
Кликните здесь для просмотра всего текста
Zad


C++
1
2
3
4
5
6
7
8
9
10
11
#include "Train.h"
#include <iostream>
using namespace std;
 
int main() {
    setlocale(LC_ALL,"Russian");
    Train t;
    t.getdata();
    t.putdata();
    return 0;
}
B12
0 / 0 / 0
Регистрация: 29.01.2014
Сообщений: 2
02.06.2014, 19:24     Описание класса с именем TRAIN #6
felicita_091, а есть полный код?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.06.2014, 10:31     Описание класса с именем TRAIN
Еще ссылки по теме:

C++ Описание класса с именем PERSON
Разработать структуру с именем TRAIN C++
C++ Описать структуру с именем TRAIN, C++

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

Или воспользуйтесь поиском по форуму:
felicita_091
 Аватар для felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
11.06.2014, 10:31  [ТС]     Описание класса с именем TRAIN #7
B12, это и есть, полный код
Yandex
Объявления
11.06.2014, 10:31     Описание класса с именем TRAIN
Ответ Создать тему
Опции темы

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