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

Сказали некрасиво пишу - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 45, средняя оценка - 4.98
Demelurg
0 / 0 / 0
Регистрация: 12.10.2013
Сообщений: 28
12.10.2013, 11:08     Сказали некрасиво пишу #1
изучаю с++ почти 2 месяц , пишу програму она работает но препод говорит что иногда не красиво пишу ((( пишу так

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
class Time
{
private:
    int hour;
    int minute;
    int second;
    int tmp_sec;
    int tmp_min;
public:
    Time():hour(0),minute(0),second(0) 
    {}
    Time(int h , int m , int s):hour(h),minute(m),second(s)
    {}
    void Out_put()const
    {
        cout<<setw(3)<<" Time = "<<setw(3)<<hour<<" : "
            <<setw(3)<<minute<<" : "<<second<<endl;
    }
 
    Time sum_Time(Time);
};
 
Time Time::sum_Time(Time other_time)
   {
       Time tmp;
       tmp_sec = 60;
       tmp_min = 60;
 
       tmp.hour = hour + other_time.hour ;
 
       tmp.second = second + other_time.second ;
       tmp.minute = minute + other_time.minute ;
        
           if ( tmp.second >= 60 )
               {
                   tmp_sec *= tmp.second / 60 ;
                   tmp.minute += tmp_sec / 60 ;
                   tmp.second -= tmp_sec ;
               }
 
               if ( tmp.minute >= 60 )
                   {
                       tmp_min *= tmp.minute / 60 ;
                       tmp.hour += tmp_min / 60 ;
                       tmp.minute -= tmp_min ;
                   }
      return tmp;
   }
   
int main()
{
    Time first_Time(22,155,177);
    Time second_Time(12,39,89);
 
    first_Time.Out_put();
    second_Time.Out_put();
 
    cout<<endl<<endl<<" You Three = ";
    Time three_Time = first_Time.sum_Time(second_Time);
    three_Time.Out_put();
 
    cout<<endl<<endl;
 
    return 0;
}
не красиво потомучто не подписую что делает та или иная функция в коментариях ???
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2013, 11:08     Сказали некрасиво пишу
Посмотрите здесь:

пишу ed, отмена изменений C++
Пишу ОС, нужен доступ к экрану C++
C++ Вопрос новичка - пишу калькулятор
Пишу консольное приложение C++
C++ пишу калькулятор. подскажите
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.10.2013, 11:09     Сказали некрасиво пишу #2
Цитата Сообщение от Demelurg Посмотреть сообщение
но препод говорит что иногда не красиво пишу
Цитата Сообщение от Demelurg Посмотреть сообщение
не красиво потомучто не подписую что делает та или иная функция в коментариях ???
А у преподавателя спросить?
Demelurg
0 / 0 / 0
Регистрация: 12.10.2013
Сообщений: 28
12.10.2013, 11:15  [ТС]     Сказали некрасиво пишу #3
а у него не хотел спрашивать.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.10.2013, 11:29     Сказали некрасиво пишу #4
Цитата Сообщение от Demelurg Посмотреть сообщение
а у него не хотел спрашивать.
У него как раз и нужно. Кто может знать, что ему не нравится? Коментарии, по-моему, не относятся к красоте написания кода. Обычно это относится к форматированию.
Demelurg
0 / 0 / 0
Регистрация: 12.10.2013
Сообщений: 28
12.10.2013, 11:34  [ТС]     Сказали некрасиво пишу #5
ну видимо всетаки спрошу а на ваш взгляд все норм ?
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.10.2013, 11:36     Сказали некрасиво пишу #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
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
#include <iostream> 
#include <iomanip>
using namespace std; 
 
class Time
{
private:
    int hour;
    int minute;
    int second;
    int tmp_sec;
    int tmp_min;
 
public:
    Time() : hour(0), minute(0), second(0) 
    {}
    
    Time(int h, int m, int s) : hour(h), minute(m), second(s)
    {}
    
    void Out_put()const
    {
        cout << setw(3) << " Time = " << setw(3) << hour << " : "
             << setw(3) << minute <<" : " << second << endl;
    }
 
    Time sum_Time(Time);
};
 
Time Time::sum_Time(Time other_time)
{
    Time tmp;
    tmp_sec = 60;
    tmp_min = 60;
 
    tmp.hour = hour + other_time.hour;
 
    tmp.second = second + other_time.second;
    tmp.minute = minute + other_time.minute;
 
    if (tmp.second >= 60)
    {
        tmp_sec *= tmp.second / 60;
        tmp.minute += tmp_sec / 60;
        tmp.second -= tmp_sec;
    }
 
    if (tmp.minute >= 60)
    {
        tmp_min *= tmp.minute / 60;
        tmp.hour += tmp_min / 60;
        tmp.minute -= tmp_min;
    }
    return tmp;
}
 
int main()
{
    Time first_Time(22, 155, 177);
    Time second_Time(12, 39, 89);
 
    first_Time.Out_put();
    second_Time.Out_put();
 
    cout << endl << endl << " You Three = ";
    Time three_Time = first_Time.sum_Time(second_Time);
    three_Time.Out_put();
 
    cout << endl << endl;
 
    return 0;
}
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
12.10.2013, 11:38     Сказали некрасиво пишу #7
Demelurg, На мой взгляд так ты красиво пишешь. Пошли препода куда подальше, не обращай внимания.

Скажи ему как хочу так и пишу, то уже не ваше дело. Как писать это выбор лично каждого, ну если в команде, то тогда уже вместе решают как что писать.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
12.10.2013, 11:38     Сказали некрасиво пишу #8
Цитата Сообщение от Demelurg Посмотреть сообщение
не красиво потомучто не подписую что делает та или иная функция в коментариях ???
Лучше называйте функции так, чтобы их предназначение было очевидно из названия.
Demelurg
0 / 0 / 0
Регистрация: 12.10.2013
Сообщений: 28
12.10.2013, 11:39  [ТС]     Сказали некрасиво пишу #9
ясно всем спасибки.
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
12.10.2013, 11:54     Сказали некрасиво пишу #10
Что замечено:
1. Зачем tmp_sec, tmp_min в качестве членов класса?
2. Класс надо бы вынести в отдельный модуль.
3. Передавать объект, если он не меняется, лучше по константной ссылке.
4. Приватные данные я бы поместил в конец определения класса.
Anton_Kretov
 Аватар для Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
12.10.2013, 11:58     Сказали некрасиво пишу #11
Я бы советовал делать объявление переменных одного типа в одной строке. Пример: int a, b, c, d;
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.10.2013, 12:00     Сказали некрасиво пишу #12
Сообщение было отмечено автором темы, экспертом или модератором как ответ
А я бы не советовал...
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
12.10.2013, 13:21     Сказали некрасиво пишу #13
Да нормальный код. По моему, читается даже лучше, чем примеры из учебника.
castaway
12.10.2013, 13:29
  #14

Не по теме:

Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
По моему, читается даже лучше, чем примеры из учебника.
Я бы даже сказал, что читается лучше чем в 99% постах раздела "С++ для начинающих" )

cosmic
33 / 31 / 0
Регистрация: 29.08.2012
Сообщений: 84
Записей в блоге: 1
12.10.2013, 15:12     Сказали некрасиво пишу #15
Я бы сказал что ты больше 2х месяцев занимаешься С++
Matan!
13 / 13 / 1
Регистрация: 31.05.2013
Сообщений: 208
Записей в блоге: 1
Завершенные тесты: 1
12.10.2013, 15:50     Сказали некрасиво пишу #16
Нормально всё читается.
Цитата Сообщение от Anton_Kretov Посмотреть сообщение
Я бы советовал делать объявление переменных одного типа в одной строке. Пример: int a, b, c, d;
Это спорно.Нам говорили,что хорошим стилем является объявление каждой переменной в отдельной строке.Кто как хочет,так и объявляет.Лишь бы винегрета не было в коде.
Avazart
 Аватар для Avazart
6901 / 5141 / 252
Регистрация: 10.12.2010
Сообщений: 22,604
Записей в блоге: 17
12.10.2013, 16:04     Сказали некрасиво пишу #17
C++
1
sum_Time()
Може лучше
C++
1
sumTime()
или
C++
1
sum_time()
Что-то одно как разделитель слов.

Непонятно назначение :
C++
1
2
int tmp_sec;
int tmp_min;
Если они временные почему не объявлять их локально, если константы то почему их не объявлять как константы ?
Demelurg
0 / 0 / 0
Регистрация: 12.10.2013
Сообщений: 28
12.10.2013, 17:06  [ТС]     Сказали некрасиво пишу #18
1.да можно и не вносить их в клас ( tmp_sec, tmp_min ) но начал так писать и чтоб не поплутать оставил.
2. в Лафоре на тот момент не говорили как делать файл ".h" да и для маленькой проги не хотел создавать.
3.согласен но недавно начал учить класы да и метод который выводит походу const ?

C++
1
2
3
4
5
void Out_put()const
    {
        cout << setw(3) << " Time = " << setw(3) << hour << " : "
             << setw(3) << minute <<" : " << second << endl;
    }
4. тоесть вы говорите что сначала надо public: f gjnjv private: ???
kventin_zhuk
БНТУ ФИТР
 Аватар для kventin_zhuk
214 / 154 / 15
Регистрация: 26.12.2012
Сообщений: 382
12.10.2013, 17:17     Сказали некрасиво пишу #19
Demelurg, норм, только не понравилось наименование методов. В константном - большая буква, в обычном - маленькие. Лично я открытые методы именую аля SumTime И перед private-полями ставлю нижнее подчеркивание - удобно потом в конструктор параметры передавать Дело привычки)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2013, 17:28     Сказали некрасиво пишу
Еще ссылки по теме:

C++ Пишу транслятор и интерпритатор
Сказали сделать такое C++
Ядрышко ОСи пишу C++

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

Или воспользуйтесь поиском по форуму:
Demelurg
0 / 0 / 0
Регистрация: 12.10.2013
Сообщений: 28
12.10.2013, 17:28  [ТС]     Сказали некрасиво пишу #20
в класе хотел обявить выдает ошыбку а глобально не хотел обявлять их ( int tmp_sec; int tmp_min )но да можно и локально.
kventin_zhuk а про
Цитата Сообщение от kventin_zhuk Посмотреть сообщение
перед private-полями ставлю нижнее подчеркивание
не понял как ?
ты емеешь ввиду типа не так

C++
1
2
3
4
5
6
private:
    int hour;
    int minute;
    int second;
    int tmp_sec;
    int tmp_min;
а так ?

C++
1
2
3
4
5
6
private:
    int _hour;
    int _minute;
    int _second;
    int _tmp_sec;
    int _tmp_min;
Yandex
Объявления
12.10.2013, 17:28     Сказали некрасиво пишу
Ответ Создать тему
Опции темы

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