0 / 0 / 1
Регистрация: 24.02.2013
Сообщений: 146
1

Классы (по введенному названию станции вывести из ф-ции мгц)

07.10.2013, 11:54. Показов 741. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Можете помочь, вот я писал программу по классам но у меня возникла проблема, мне нужно в основной программе по введенному названию станции вывести из ф-ции мгц етой станции, можете написать как

radio.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
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 "radio.h"
#include <string.h>
#include <iostream>
#include <cstdlib>
#include <clocale>
 
Radio::Radio(void)
{
}
 
void Radio::SetState (int NewState)
{
    State = NewState;
}
 
void Radio::Default()
{
    Powerr = false;
    SetState(Offline);
    Volumee = 0;
    Mhzzz = 88;
}
 
void Radio::TurnOn()
{
    if (Powerr)
    {
        Powerr = true;
        SetState(Online);
        Volumee = 5;
        Mhzzz = 88;
    }
}
 
void Radio::TurnOff()
{
    if (Powerr)
    {
        Powerr = false;
        SetState(Offline);
        Volumee = 0;
    }
 
}
 
int Radio::Mhz(const char stat[5])
{
    int Mhzz = 0;
 
        if(strcmp(stat, "Lux")) 
            {
                Mhzz = 89;
                return Mhzz;
            }
}
 
int Radio::ChangeMhz(int)
{
    /*if ()
    {
    }*/
    return 0;
}
 
int Radio::DeleteMhz(int)
{
    return 0;
}
 
int Radio::Volume(int)
{
    return Volumee;
}
 
int Radio::GetState (void)
{
    return State;
}
 
Radio::~Radio(void)
{
}
radio.h
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
#pragma once
 
const int       MAXMHZ = 108;
const int       MINMHZ = 88;
const int       MAXVOLUME = 10;
const int       MINVOLUME = 0;
enum            RadioState {Offline, Online};
const char      RadioStateName[4][8] = {"Offline", "Online"};
 
 
class Radio
{
    bool Powerr;
    int Volumee;
    int Mhzzz;
 
    int State;
 
    void SetState (int);
public:
    Radio(void);
    ~Radio(void);
 
    void Default(void);
    //Живлення
    void TurnOn(void);
    void TurnOff(void);
    bool Power(void);
    //Частота та назва станції
    int  Mhz(const char stat[5]);
    int  ChangeMhz(int);
    int  DeleteMhz(int) ;
    //Гучність
    int  Volume(int) ;
 
    int  GetState (void);
    const char* const GetStateName ();
};
Исходный код.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
48
49
50
51
#include <iostream>
#include <cstdlib>
#include <clocale>
#include "radio.h"
 
using namespace std;
 
int main()
{
    int key;
    char stat[5];
    
    setlocale(LC_ALL, "Rus");
 
    Radio Babuna;
    Babuna.Default ();
 
    do
    {
        cout << "1. Óâiìêíóòè ðàäiî" << endl;
        cout << "2. Ãó÷íiñòü" << endl;
        cout << "3. Ïåðåìêíóòè ñòàíöiþ (íàçâîþ)" << endl;
        cout << "4. Ïåðåìêíóòè ñòàíö³þ (÷àñòîòîþ)" << endl;
        cout << "5. Íàçâà àêòèâíîi ñòàíö³³" << endl;
        cout << "0. Âèìêíóòè ðàäiî" << endl << endl;
        cin >>(key);
        
        
        switch (key)
        {
            case '0': Babuna.TurnOff (); break;
            case '1': Babuna.TurnOn (); break;
            
            case '2': 
                {
                break;
                }
 
            case '3': 
                {
                cout << "Ââåäiòü íàçâó ñòàíöii: ";
                cin >> stat;
                break;
                }
 
    } 
    }while (true);
    
    system("pause");
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.10.2013, 11:54
Ответы с готовыми решениями:

По введенному названию группы вывести всех учащихся этой группы.
1.Имеется массив записей, содержащий сведения об учащихся: фамилия и группа. По введенному названию...

Изменить шрифт по введенному названию
При вводе в textBox2 название шрифта(Arial,Courier New, Times New Roman...), меняется шрифт в...

Открытие файла по названию, введённому с клавиатуры
char name,str; printf(&quot;Введите название файла: &quot;); scanf_s(&quot;%s&quot;, &amp;name); FILE *in; in =...

Можно ли по введенному названию вызвать процедуру / функцию?
Я только начинаю программировать и для практики решил порешать задачки из сборника. Чтобы не...

11
544 / 93 / 49
Регистрация: 16.12.2011
Сообщений: 317
07.10.2013, 12:41 2
Можете подробнее объяснить что у вас не получается?
0
0 / 0 / 1
Регистрация: 24.02.2013
Сообщений: 146
07.10.2013, 13:02  [ТС] 3
я не понимаю как ето реализовать тобеж по заданому названию станции перейти на её частоту в мгц и вывести ето в главной программе

Добавлено через 1 минуту
Цитата Сообщение от MCKLAS Посмотреть сообщение
Можете подробнее объяснить что у вас не получается?
я не понимаю как ето реализовать тобеж по заданому названию станции перейти на её частоту в мгц и вывести ето в главной программе
0
544 / 93 / 49
Регистрация: 16.12.2011
Сообщений: 317
07.10.2013, 13:24 4
tAruuuch, так у вас название станции нигде не хранится, если б у вас хранилось название станции и частота в одном классе это не было бы проблемой.
0
0 / 0 / 1
Регистрация: 24.02.2013
Сообщений: 146
07.10.2013, 13:31  [ТС] 5
Цитата Сообщение от MCKLAS Посмотреть сообщение
tAruuuch, так у вас название станции нигде не хранится, если б у вас хранилось название станции и частота в одном классе это не было бы проблемой.
а вы можете пожалуйста описать что бы я понял на будущее как это должно выглядеть
0
544 / 93 / 49
Регистрация: 16.12.2011
Сообщений: 317
07.10.2013, 13:51 6
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
#include<iostream>
using namespace std;
 
class Radio {
    //... something else
private:
    class RadioDescription {
    public:
        int mgz;
        char name[20];
} radiodescription[5];
    //... something else
public:
    int findMgzByStationName(char *radiostation_name) {
        for(int i = 0; i < 5; i++) {
            if(strcmp(radiodescription[i].name, radiostation_name) == 0)
                return radiodescription[i].mgz;
        }
    }
    void setRadioDescription(int number, char *inp_name, int inp_mgz) {
        radiodescription[number].mgz = inp_mgz;
        strcpy(radiodescription[number].name,inp_name);
    }
    void show() {
        for(int i = 0; i < 5; i++) {
            cout << "Name of station: " << radiodescription[i].name << endl;
            cout << "Mgz: " << radiodescription[i].mgz << endl;
        }
    }
};
 
int main()
{ 
    Radio radio;
    radio.setRadioDescription(0, "Radio Mayak", 980);
    radio.setRadioDescription(1, "America", 234);
    radio.setRadioDescription(2, "Grand Hotel Radio", 432);
    radio.setRadioDescription(3, "Russia Today", 342);
    radio.setRadioDescription(4, "Fleeks News", 234);
    radio.show();
    cout << "mgz was find: " << radio.findMgzByStationName("Russia Today") << endl;
    system("pause");
    return 0;
}
0
0 / 0 / 1
Регистрация: 24.02.2013
Сообщений: 146
07.10.2013, 15:11  [ТС] 7
MCKLAS, Ошибка 1 error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. c:\users\dima\documents\visual studio 2012\projects\consoleapplication2\consoleapplication2\исходный код.cpp 22

оно выдает такую ошибку

Добавлено через 4 минуты
можете кто-то его дописать в ту программу что я скидывал что бы оно работало
0
17 / 17 / 5
Регистрация: 09.03.2013
Сообщений: 65
07.10.2013, 15:37 8
Ошибка 1 error C4996: 'strcpy': ...
C++
1
strcpy(radiodescription[number].name,inp_name);
замени на
C++
1
strcpy_s(radiodescription[number].name,strlen(inp_name), inp_name);
0
544 / 93 / 49
Регистрация: 16.12.2011
Сообщений: 317
07.10.2013, 16:03 9
Интегрировал в ваш код. Можете использовать #define _CRT_SECURE_NO_WARNINGS чтобы не появлялась ошибка, в том файле где используются функции из string.h
Вложения
Тип файла: rar code.rar (1.3 Кб, 4 просмотров)
1
Тамара69
07.10.2013, 16:42 10
ПОМОГИТЕ КТО-НИТЬ(((( НАШ СИСТЕМНЫЙ АДМИНИСТРАТОР СВАЛИЛ В АРМИЮ( НЕ ОСТАВИВ НИ ЯВОК НИ ПАРОЛЕЙ(((( Я НИЧЕГО НЕ МОГУ СДЕЛАТЬ( ДАЖЕ ФЛЕШ-ПЛЕЕР УСТАНОВИТЬ НЕ МОГУ( НЕ ГОВОРЯ УЖЕ О ДУБЛЬ ГИС. П О М О Ж И Т Е Л Ю Д И Д О Б Р Ы Е(((((( плииииииииииииииииииииииз
Croessmah
07.10.2013, 16:44
  #11

Не по теме:

Цитата Сообщение от Тамара69 Посмотреть сообщение
НАШ СИСТЕМНЫЙ АДМИНИСТРАТОР СВАЛИЛ В АРМИЮ
Подождите годик!

0
0 / 0 / 1
Регистрация: 24.02.2013
Сообщений: 146
07.10.2013, 16:45  [ТС] 12
MCKLAS, спасибо
0
07.10.2013, 16:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.10.2013, 16:45
Помогаю со студенческими работами здесь

По введенному названию страны выдать название ее континента
помогите написать программу, я знаю, что они элементарные, просто я с Паскалем не знаком почти. За...

Вывод введённого номера соответствующего введённому названию
Помогите, пожалуйста, решить один нюанс. Нужно просто по введённому названию книги вывести...

По введённому названию страны выводит на экран название столицы
Помогите сделать эту программу. По названию страны (переменная типа Country) присвоить переменной...

По введенному названию дня недели выдать его порядковый номер
Составить программу, которая по введенному названию дню недели выдает его порядковый номер. ...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru