powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / задача для начинающих
25 сообщений из 213, страница 3 из 9
задача для начинающих
    #36601754
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Siemargl,

фор эт конечно хорошо.
знаю такой. но он был в след главе =Р
нужно было вайлами решать.

to Siemargl, вы наверно не с самого начала читали топег?
там же ясно сказано, решать ИЗВЕСТНЫМИ методами.
не забегая вперед.
другое дело вы не в курсе что там в книге дано.

а паскаль нее, ниразу не.))
...
Рейтинг: 0 / 0
задача для начинающих
    #36601767
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281,

и что там, тернарный оператор после циклов идёт, в твоей чудо-книге?
...
Рейтинг: 0 / 0
задача для начинающих
    #36601878
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
egorych,

сами цыклы просто были разбиты. в одной главе вайл,
в следующей фор, ду-вайл и свич вместе с тернарной фигней
так что все в пределах "правил"))

вы мне лучше посоветуйте книжку какую нибудь. чтоб были только задачи.
без всякого учебного материала. материала пока хватает.
...
Рейтинг: 0 / 0
задача для начинающих
    #36601898
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281вы мне лучше посоветуйте книжку какую нибудь. чтоб были только задачи.
без всякого учебного материала. материала пока хватает.в топку книжки с задачами, программируй реальные проекты. Что толку учебную жвачку перемалывать.
...
Рейтинг: 0 / 0
задача для начинающих
    #36602147
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl пишет:
> for(int counter = *0*; counter < *10*; i++)
>
> конечно


for(int counter = 0; counter < 10; ++ i) // !!

Пусть уж привыкает к хорошему смолоду.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
задача для начинающих
    #36602205
Микросекунда
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv пишет:

M> for(int counter = 0; counter < 10; ++i) // !!

M> Пусть уж привыкает к хорошему смолоду.

Оно конечно верно, сам двумя руками ЗА это же, но справедливости ради: в случае int-ов (да и других неклассов) компилятор генерит совершенно одинаковый код как в случае использования i++, так и ++i. Т.е. компилятор понимает, что возвращаемое значение не используется, и генерит "++i" в любом случае.

PS: а почему инициализируется counter, а увеличивается i ?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
задача для начинающих
    #36603972
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МикросекундаMasterZiv пишет:

M> for(int counter = 0; counter < 10; ++i) // !!

M> Пусть уж привыкает к хорошему смолоду.

Оно конечно верно, сам двумя руками ЗА это же, но справедливости ради: в случае int-ов (да и других неклассов) компилятор генерит совершенно одинаковый код как в случае использования i++, так и ++i. Т.е. компилятор понимает, что возвращаемое значение не используется, и генерит "++i" в любом случае.
Смысл то просто в привычки и глаз начинает цепляется на i++. Там же может быть не только int.
...
Рейтинг: 0 / 0
задача для начинающих
    #36605068
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
petrav,

в циклах по барабану как ставить посфикс или префикс.

а для правильной привычки нужно просто четко понимать когда нужно ставить пост.. а когда пре..
...
Рейтинг: 0 / 0
задача для начинающих
    #36605095
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
egorychsantexnik281вы мне лучше посоветуйте книжку какую нибудь. чтоб были только задачи.
без всякого учебного материала. материала пока хватает.в топку книжки с задачами, программируй реальные проекты Что толку учебную жвачку перемалывать.
совет неплохой. я согласен.
но есть одно [size=7]маленькое НО
я всего два месяца как начал изучать с++.
никакой базы у меня нет, ваабще. то есть с нуля. полностью.
я еще даже треть книжки не изучил.
КАК я могу начинать что либо проектировать???
если я даже не знаю элементарных вещей
...
Рейтинг: 0 / 0
задача для начинающих
    #36605237
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281 wrote:
>> в циклах по барабану как ставить посфикс или префикс.
не в каждом цикле по барабану, в том то и дело. Во второй ( или в третьей ) трети книжки доберёшься до циклов, где i++ будет давать оверхед.

>>а для правильной привычки нужно просто четко понимать когда нужно ставить пост.. а когда пре..
для правильной привычки не надо ничего понимать, надо рисовать на автомате в цикле ++i, и всё, потому что есть случаи, когда оба варианта одинаковы, а есть случаи, когда префиксная форма позволяет выиграть в скорости. ну и зачем тогда использовать постфикс в цикле?
...
Рейтинг: 0 / 0
задача для начинающих
    #36605633
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо за развернутые ответы.
...
Рейтинг: 0 / 0
задача для начинающих
    #36605652
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в кратце можно дать определение "стек"а

не как по книжкам учили, а как бы вы объяснили для чайника
на примерах из жизни
...
Рейтинг: 0 / 0
задача для начинающих
    #36605680
Mozok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281,

ОМГ, снова...
...
Рейтинг: 0 / 0
задача для начинающих
    #36606347
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mozok,

%-)
глаза в кучу.

ладно. не буду забивать мозг раньше времени.

как говорят психологи, лучше запоминается то и именно то, что интересует в данный момент.
и менее запоминается то, что пока не интересно.

подожду до того момента, как стек будет требовать от меня каких либо скачков мозга и т.п..
а там и разобраться будет не сложно
...
Рейтинг: 0 / 0
задача для начинающих
    #36606361
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281Mozok,

%-)
глаза в кучу.

ладно. не буду забивать мозг раньше времени.

как говорят психологи, лучше запоминается то и именно то, что интересует в данный момент.
и менее запоминается то, что пока не интересно.

подожду до того момента, как стек будет требовать от меня каких либо скачков мозга и т.п..
а там и разобраться будет не сложно
Стек очень важное понятие в С++. И крайне простое.

Представь ты читаешь книгу. Она раскрытая лежит перед тобой. В книге в определенном месте указано, что далее нужно прочитать другую книгу. Ты раскрываешь ее и кладешь поверх первой. И прочитываешь до конца, а потом отбрасываешь и возвращаешься к первой.

В следующий раз тебе посоветуют прочесть несколько книг - ты положишь их поверх первой и все прочитаешь. А потом отбросишь эти книги. И вернешься к первой.

Так и стек - когда вызывается функция (или метод класса - это одно и тоже) - процессор кладет поверх старых данных (книг) новые данные (книги) и обрабатывает новые данные (книги) - на выходе из функции (когда он прочел новые книги).

Программирование - это всегда способ описания реальности. Ничего больше.
...
Рейтинг: 0 / 0
задача для начинающих
    #36606387
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
petrav,

то есть, другими словами, во время выполнения конкретной задачи ( чтение книги ) компьютер скрывает старые переменные ( те книги которые под..), и вновь обращается к ним ( отбрасывает верхние книги) открывая?

я так понял одна и та же переменная в разных стеках может иметь разные значения. right?

стек n / int x = 9
стек ...
стек 4 / int x = 2
стек 3 / int x = 3
стек 2 / int x = 8
стек 1 / int x = 5

допустим переменные x в ходе программы не меняются.
задача дошла до стека n и манипулирует функциями в которых x = 9..,
высвобождаясь от поверх наложенных стеков ( решив их, и возвратившись в начало )
в текущей задаче x все равно будет 5 как и инициализировалось в самом начале?
...
Рейтинг: 0 / 0
задача для начинающих
    #36606412
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281petrav,

то есть, другими словами, во время выполнения конкретной задачи ( чтение книги ) компьютер скрывает старые переменные ( те книги которые под..), и вновь обращается к ним ( отбрасывает верхние книги) открывая?

Не всегда. В моем примере, при чтении новых книг ты же можешь пролистать и первую - ведь физика это не запрещает. Так и в стеке новые данные (книги) не всегда абсолютно перекрывают старые.

santexnik281я так понял одна и та же переменная в разных стеках может иметь разные значения. right?

Может. Но не всегда. Аналогия с книгами абсолютно верна, представь что ты их складываешь в стопку по мере перекрестных ссылок этих книг. Может быть даже бесконечный цикл. Книга1 ссылается на Книга2, а Книга2 ссылается на Книга1.

santexnik281стек n / int x = 9
стек ...
стек 4 / int x = 2
стек 3 / int x = 3
стек 2 / int x = 8
стек 1 / int x = 5

допустим переменные x в ходе программы не меняются.
задача дошла до стека n и манипулирует функциями в которых x = 9..,
высвобождаясь от поверх наложенных стеков ( решив их, и возвратившись в начало )
в текущей задаче x все равно будет 5 как и инициализировалось в самом начале?

Да. Но опять же.

В моем примере со стопками книг. Ты можешь положить сверху новую книгу (или копию книги, но на другой главе) и не возвращаться к старой пока не прочел новую. А можешь при чтении новой переодически перелистывать старую.

Так и в программировании. Оба подхода совершенно корректны. Но выбрать нужно правильный в данной ситуации.

А вообще, все это лирика. Вступление. Как это работает все равно нужно понять в деталях.

Ты хотел жизненный пример. Получил. Но невозможно на пальцах пояснить в точности как работает телевизор. Нужно учиться.
...
Рейтинг: 0 / 0
задача для начинающих
    #36606428
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спс
petrav[quot santexnik281]petrav,
Ты хотел жизненный пример. Получил. Но невозможно на пальцах пояснить в точности как работает телевизор. Нужно учиться.
имхо. телевизор объяснить легче, чем физику с++
...
Рейтинг: 0 / 0
задача для начинающих
    #36606488
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281я так понял одна и та же переменная в разных стеках может иметь разные значения. right?

стек n / int x = 9
стек ...
стек 4 / int x = 2
стек 3 / int x = 3
стек 2 / int x = 8
стек 1 / int x = 5
нет никаких разных стеков. стек один на программу. Ты видел когда-нибудь банку чипсов принглс? такую цилиндрическую? вот это стек. а чипсины - данные, которые в нём хранятся.
...
Рейтинг: 0 / 0
задача для начинающих
    #36606502
avb1003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorych...
нет никаких разных стеков. стек один на программу. ...Слишком категорично.
man sigaltstack
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
SIGALTSTACK(2)                                Linux Programmer's Manual                                SIGALTSTACK(2)



NAME
       sigaltstack - set and/or get signal stack context

     ....
      sigaltstack() allows a process to define a new alternate signal stack and/or retrieve the state of an existing
       alternate signal stack.
      ....
       Establishing an alternate signal stack is useful if a process expects that it may exhaust its standard  stack.
       This may occur, for example, because the stack grows so large that it encounters the upwardly growing heap, or
       it reaches a limit established by a  call  to  setrlimit(RLIMIT_STACK,  &rlim).   If  the  standard  stack  is
       exhausted,  the  kernel sends the process a SIGSEGV signal.  In these circumstances the only way to catch this
       signal is on an alternate signal stack.

А еще бывают многопоточные программы и каждый поток имеет свой стек.
...
Рейтинг: 0 / 0
задача для начинающих
    #36606931
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
avb1003, молодец, умный мальчик. садись, пять
...
Рейтинг: 0 / 0
задача для начинающих
    #36608097
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Егорыч. вы по какой книге учились?
если в институте то не обязательно отвечать..

просто иногда я прихожу к мысли что заниматься по единственной книге это несколько не то.. (хотя книга очень компетентна)
вот и думаю какую книжку выбрать в качестве дополнительной, чтоб мозг загружался в дуплексном режиме.

народ. может че посоветуете в качестве дополнения?

судить о книге по рейтингу продаж не хоцца.
нужен совет бывалых акул бороздящих кибер пространство)
...
Рейтинг: 0 / 0
задача для начинающих
    #36608106
santexnik281
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и еще вопрос.
относительно обучения.

в программировании кроме как высшей математики нужно что то еще знать?
может быть есть что то, что следовало бы изучить?
...
Рейтинг: 0 / 0
задача для начинающих
    #36608112
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281и еще вопрос.
относительно обучения.

в программировании кроме как высшей математики нужно что то еще знать?
может быть есть что то, что следовало бы изучить?
Высшую математику тоже по книгам и заданиям учишь?
...
Рейтинг: 0 / 0
задача для начинающих
    #36608240
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
santexnik281 пишет:

> в программировании кроме как высшей математики нужно что то еще знать?
> может быть есть что то, что следовало бы изучить?
>
Да. Программирование.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
25 сообщений из 213, страница 3 из 9
Форумы / C++ [игнор отключен] [закрыт для гостей] / задача для начинающих
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]