Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Уроки по C++. Обсуждение.  (Прочитано 17516 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн RingOV

  • Активист
  • *
  • Сообщений: 764
    • Просмотр профиля
Re: Уроки по C++. Обсуждение.
« Ответ #15 : 27 Октября 2013, 20:58:02 »
Программирование у меня на любительском уровне. С++ давно начинал изучать - как начал так и закончил. Недавно решил сделать второй заход, а тут как раз урок попался. Т.е. программа не первая, но дальше этой программы я ничего толком и не знаю.

Оффлайн Agafonov

  • Администратор
  • Старожил
  • *
  • Сообщений: 1114
  • Нам помехи не страшны!
    • Просмотр профиля
    • Живу в сети...
Re: Уроки по C++. Обсуждение.
« Ответ #16 : 27 Октября 2013, 21:50:50 »
Очень рекомендую автору оставить на форуме только обсуждение, а сами статьи переложить в документацию, на https://help.ubuntu.ru/wiki/

Начать можно с https://help.ubuntu.ru/правила
Ubuntu 16.04 LTS @ Desktop & Servers

Оффлайн peregrine

  • Автор темы
  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: Уроки по C++. Обсуждение.
« Ответ #17 : 27 Октября 2013, 22:27:02 »
Agafonov, а в какой раздел Wiki? В C++, вроде, небольшая статья по C++. А уроки, наверно в отдельную статью надо.

Оффлайн Grigory Smirnov

  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: Уроки по C++. Обсуждение.
« Ответ #18 : 28 Октября 2013, 11:35:57 »
В вики ужасная система разметки, дольше в ней разбираться будешь чем уроки писать.

Онлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5589
  • Все по палатам!
    • Просмотр профиля
Re: Уроки по C++. Обсуждение.
« Ответ #19 : 28 Октября 2013, 12:57:18 »
peregrine,
Извиняюсь, но если это уроки, то материал, то есть тексты программ, примеры, надо прадставлять единообразно, по некоторому стандарту. А то как то плохо смотрится
std::cout<<a<<"<"<<0<<std::endl; и    std::cin >> a >> b; //Считываем подряд две переменные a и b
То есть где-то операторы отделяются пробелами, где то нет. Для изучения не принципиально, конечно, но когда человек (или несколько) напишет большую программу, очень трудно будет поиском находить нужные куски, к примеру - если в разных частях текста написано:
a=1;
и
a = 1;
То как поиском быстро найти где меняется значение а?
Зачастую единый стиль существенно уменьшает количество багов. И к этому надо привыкать с самого начала.
Извините, я все еще учусь

Оффлайн Grigory Smirnov

  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: Уроки по C++. Обсуждение.
« Ответ #20 : 28 Октября 2013, 13:57:17 »
peregrine, я не знаком с c++. Вот у меня вопрос - зачем int main? int - обозначение целочисленного типа же?..

Ну и надо было сразу объяснить что такое cout.

Оффлайн inkblack

  • Старожил
  • *
  • Сообщений: 1216
    • Просмотр профиля
Re: Уроки по C++. Обсуждение.
« Ответ #21 : 28 Октября 2013, 15:12:43 »
Цитировать
Не путайте знак присваивания a=7 со знаком равенства a==7. Первое выражение даст истину в любом случае, так как операция присваивания a значения 7 пройдёт успешно
— в первом уроке перед третьим примером.

Здесь неточность.

Выражение a=0 даст ложь, несмотря на то, что операция присваивания пройдёт успешно.
Делюсь знаниями, но их у меня мало!

Оффлайн tagezi

  • Активист
  • *
  • Сообщений: 359
    • Просмотр профиля
    • Информатика в экономике и управлении
Re: Уроки по C++. Обсуждение.
« Ответ #22 : 28 Октября 2013, 17:30:44 »
peregrine, я не знаком с c++. Вот у меня вопрос - зачем int main? int - обозначение целочисленного типа же?..

Ну и надо было сразу объяснить что такое cout.
Там вроде было написано, что всё разжевывать не будут =)
Хотя может будут, когда дойдём до какого-то там сложного урока (третьего, кажеться), в котором будут нетривиальные задачи, для показания всей сложности языка с++ =)
Вообще, main() - это функция, головная, то есть первая в программе, из которой идут ссылки в другие функции.
В с++ перед функцией ставят то что она должна вернуть. Программа, в норме, должна вернуть числовое значение (код ошибки или ноль). По этому и пишут int main().
ASUS K53E, intel i5, 8 Gb, Integrated Intel® GMA HD
wiki LibreOffice
справка LibreOffice

Оффлайн Grigory Smirnov

  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: Уроки по C++. Обсуждение.
« Ответ #23 : 28 Октября 2013, 17:32:48 »
Спасибо, на Java похоже. Там тоже строгая типизация, которая мне не нравится.

Ну а вообще позиция peregrine не понятна - зачем уроки, если он постоянно пишет, что то не будет объяснять, это смотрите в книге...

Оффлайн inkblack

  • Старожил
  • *
  • Сообщений: 1216
    • Просмотр профиля
Re: Уроки по C++. Обсуждение.
« Ответ #24 : 28 Октября 2013, 17:49:15 »
Хорошо, что уроки. Это как семинары — без лекций не катят.
Делюсь знаниями, но их у меня мало!

Оффлайн tagezi

  • Активист
  • *
  • Сообщений: 359
    • Просмотр профиля
    • Информатика в экономике и управлении
Re: Уроки по C++. Обсуждение.
« Ответ #25 : 28 Октября 2013, 17:50:02 »
Спасибо, на Java похоже. Там тоже строгая типизация, которая мне не нравится.

Ну а вообще позиция peregrine не понятна - зачем уроки, если он постоянно пишет, что то не будет объяснять, это смотрите в книге...

tagezi, Цель такая же как и у Grigory Smirnov - структурировать свои знания, вспомнить, что помню, а что забыл или помню неправильно.

То есть явно не научить кого-то, к сожалению.
Кроме того, он считает что язык сложный, хотя язык не сложнее чем любой другой. Но при помощи этого языка можно делать очень сложные конструкции, которые реально могут облегчать задачи быстрого программирования. Примером являются библиотеки qt - которые по сути просто заголовочные файлы (из кучи маленьких классов (объектов), как из кирпичиков, построено куча разных очень полезных и сложных классов (объектов), как дома, башни, подвалы =)

Хотя я думаю нужно подождать, возможно мы не видим светлую мысль автора.
ASUS K53E, intel i5, 8 Gb, Integrated Intel® GMA HD
wiki LibreOffice
справка LibreOffice

Оффлайн Grigory Smirnov

  • Старожил
  • *
  • Сообщений: 1339
  • Дайте мне исходники, и я переверну Землю.
    • Просмотр профиля
    • Дафтер
Re: Уроки по C++. Обсуждение.
« Ответ #26 : 28 Октября 2013, 18:23:18 »
tagezi, возможно. Только вот
Цитировать
Цель такая же как и у Grigory Smirnov - структурировать свои знания, вспомнить, что помню, а что забыл или помню неправильно.
не правильно. Да, я так написал. Но это чтобы при неудаче не говорили, что учить не умеет, так не учи...
« Последнее редактирование: 28 Октября 2013, 18:31:40 от Grigory Smirnov »

Оффлайн tagezi

  • Активист
  • *
  • Сообщений: 359
    • Просмотр профиля
    • Информатика в экономике и управлении
Re: Уроки по C++. Обсуждение.
« Ответ #27 : 28 Октября 2013, 18:42:48 »
tagezi, возможно. Только вот
Цитировать
Цель такая же как и у Grigory Smirnov - структурировать свои знания, вспомнить, что помню, а что забыл или помню неправильно.
не правильно. Да, я так написал. Но это чтобы при неудаче не говорили, что учить не умеет, так не учи...
Теперь это не имеет значение, прецедент создан =)
Цели выставлены.

На мой взгляд план действий перед тем как начать давать уроки должен быть такой:
Цитировать
1) Систематизировать свои знания
2) Понять свои пробелы, ошибки, доучиться
3) Понять будет ли этот материал кому-то полезен (если да)
4) Структурировать так что бы материал свободно воспринимался другим человеком, тем кому это может быть полезно
И если получилось создать такую структуру
5) Разместить его в доступном для заинтересованных месте
А не на оборот, потому что на оборот - это не имеет никакой ценности.
Или хотя бы называть не "Урок №...", что-нибудь, "Хочу освежить материал в голове, помогите..." тогда и претензий не будет к тому что учишь криво, ибо все вместе с тобой будут вспоминать, доучивать, досматривать, додумывать
ASUS K53E, intel i5, 8 Gb, Integrated Intel® GMA HD
wiki LibreOffice
справка LibreOffice

Оффлайн inkblack

  • Старожил
  • *
  • Сообщений: 1216
    • Просмотр профиля
Re: Уроки по C++. Обсуждение.
« Ответ #28 : 28 Октября 2013, 20:02:03 »
Вот, кста, ещё один момент, требующий разъяснения:
Цитировать
Логическое выражение должно принимать численные значения. В идеале 1 (ИСТИНА) и 0 (ЛОЖЬ), но C++ будет трактовать любое число, отличное от 0, как истину.

Как раз одна из «вкусных фишек» Си — то, что 0 == false,
а всё остальное == true!

Может, с Си++ от этого отошли, не знаю.
« Последнее редактирование: 28 Октября 2013, 20:03:49 от inkblack »
Делюсь знаниями, но их у меня мало!

Оффлайн peregrine

  • Автор темы
  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7203
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: Уроки по C++. Обсуждение.
« Ответ #29 : 28 Октября 2013, 20:13:52 »
inkblack, спасибо.

Пользователь решил продолжить мысль 28 Октября 2013, 20:37:51:
inkblack, исправил, что-то я недоглядел, неправильно помнил причину. :-[
tagezi, почему, же кому-то может быть полезно.
1) Систематизировать свои знания -Да
2) Понять свои пробелы, ошибки, доучиться Да
3) Понять будет ли этот материал кому-то полезен (если да) Может быть полезен.
4) Структурировать так что бы материал свободно воспринимался другим человеком, тем кому это может быть полезно
И если получилось создать такую структуру Ну а что будет, если я сразу начну рассказывать про классы (cout) и структуры? Это уже ООП, а ООП надо изучать только после того, как знаешь и умеешь использовать простые вещи.
5) Разместить его в доступном для заинтересованных месте Потому пока и не в вики, а на форуме и обсуждение есть.
inkblack, не отошли слава богу, идеал идёт из булевой алгебры, там логические значения могут принимать только 0 и 1. Поправлю на более понятную фразу.

Пользователь решил продолжить мысль 28 Октября 2013, 20:44:24:
Grigory Smirnov, в C++ типизация строгая статическая.
« Последнее редактирование: 28 Октября 2013, 20:44:24 от peregrine »

 

Страница сгенерирована за 0.032 секунд. Запросов: 25.