Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Обучение и начало програмирования на С++

Автор: OdesitVadim
Дата сообщения: 12.04.2005 19:29
Dogmatek

Цитата:
корень в 4 степени

это извлечь или поднять.
Вариант А) четвёртую степень можно записать как "дважды" вторую, например sqrt(sqrt(x)).
Вариант Б) вспомнить школу, и написать x4=exp(4*ln(x)). если корень добыть, то 4 заменить нужно на 1/4. Ограничение одно - отрицательные числа возводить неможно.
Вариант В) Вооружившись F1. Поискать в хелпе о функциях IntPower и Power.

Цитата:

extern PACKAGE Extended __fastcall IntPower(const Extended Base, const int Exponent);
extern PACKAGE Extended __fastcall Power(const Extended Base, const Extended Exponent);

объявлены они в Math. Эти функции вообще хорошие, правда Power немного медленовата. Параметры думаю описывать не стоит
Автор: Sharikov2000
Дата сообщения: 14.04.2005 18:20

Цитата:
Dogmatek
Директива #include включает в файл другой файл. Без него работать можно, но прога будет ограничена "внутренним миром" - никаких результатов она выдать не сможет.


Полный бред. Блестящий показатель того, что человек не имеет ни малейшего реального представления о языке. Нахватался верхов, не утруждая себя подумать.
Автор: Pilotsoft
Дата сообщения: 17.05.2005 03:34
Здраствуйте, уважаемые. Подскажите, пожалуйста, чайнику, что это за ошибка такая и можно ли от нее как-то избавиться. Появляется окно
Microsoft Visual C++ Debug..
Debug Assertion Failed
Program ... Avp32.exe
File: dlgheap.c
Line: 1011
Expression:_CrtIsValidHeapPointer (pUserData)
Такое было несколько раз при попытке сканирования Антивирусом Касперского (Personal Pro v. 4.5.0.49) архивов zip или rar. Такая же ошибка возникла при просмотре pdf'а, сделанного при помощи Adobe Photoshop Album 2.0 Starter Edition (смотрел Adobe Reader'ом 6.0).
Извините, если не адресу - ничего в этом не понимаю.
Автор: mihas83
Дата сообщения: 17.05.2005 09:07
Pilotsoft
Это одна из самых распространенных ошибок не совсем корректо ''скроенных'' программ.
Говорит о том что в Avp32.exe один из указателей ''пустой''.
В какой то ситуации неправильная работа с памятью в ''куче''...
Автор: CmpaHHbIu
Дата сообщения: 18.05.2005 07:24
Привет всем.
Такой вопрос, читаю сейчас Страуструпа, и вот что вижу:
extern void put_line(point a, point b)
{ put_line(a.x,a.y,b.x,b.y); }

Мне не понятно зачем в описании функции, где явно написанно, что определение будет позже,
определять функцию?
Автор: Pilotsoft
Дата сообщения: 18.05.2005 11:05
mihas83
Спасибо.
Автор: wiwiw
Дата сообщения: 19.05.2005 02:08
CmpaHHbIu
здесь, видимо, в extern вкладывался смысл, что функция имеет внешнее связывание.
найди книгу поновей.
Автор: EraseR
Дата сообщения: 01.06.2005 11:00
Люди, подскажите, пожалуйста, где в интернете можно найти задачки по программированию на С (не С++)? Сорри что сюда постю, просто вроде С++ это типа С только расширенный, а новую тему решил что не стоит открывать
Задачки не самые сложные, т.к. только учиться кончил. Например, по массивам, строкам, указателям, посчитать чего-нибудь ну и т.д. и т.п. Вобщем, главное чтобы пока не очень углубленные можно было найти. Ну и желателньо с решениями, чтобы посмотреть можно было правильно сделал или нет, или просто посмотреть как делать
Я пытался в Яндексе искать, а мне только книжки выдавались в магазинах
Автор: teakettle
Дата сообщения: 01.06.2005 15:44
Здравствуйте уважаемые участники форума.

хочу овладеть программированием на Visual C++ для Wind..

присоединился бы чужому проекту, (нет опыта работы в команде, есть небольшой на JS и Паскаль)

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

буду очень благодарен за любые комментарии и ссылки на литературу.

удачи
Автор: vitls1
Дата сообщения: 01.06.2005 18:39
Хотел бы поделиться своим опытом обучения программированию. На мой взгляд лучший способ учиться, это определить для себя задачу и упорно ее долбить. Для себя я в свое время писал адресную книгу, с возможностью добавления, удаления, сортировки, поиска, сохранения и загрузки записей.
Шаг 1: консоль, все что вводится и выводится, идет через cin, cout, cerr. Все функции расчитаны на переносимость, то есть используется только STL. Все операции только через клавиатуру.
Обучаемся базовому вводу-выводу, работе с файлами, базовые структуры (деревья, связанные листы, массивы...), алгоритмы (поиск, сортировка...) и работа со строками.
Шаг 2: Программирование под операционную систему. Здесь идет работа по интеграции уже написанной программы с графической оболочкой.
Обучаемся системным вызовам, потокам, синхронизации. Основной код с предыдущего шага, меняются ввод-вывод и системно зависимые части. На этом этапе код с предыдущего этапа постоянно полируется и совершенствуется. В частности, я только на этом этапе начал хорошо понимать язык.
Шаг 3: Кто до сюда дойдет, тот вообще молодец. Пишем распределенное приложение. Сначала просто обмен данных. Программа с предыдущего шага, загружается на двух компах (или на одном, но под разными портами). Прога с первого компа, по команде, или по таймеру, синхронизирует данные с удаленной прогой. Затем пишем клиент-сервер, на одном компе данные, на другом пользовательский интерфейс.
Обучаемся идее клиент-серверных приложений, синхронизации, сетевому программированию.

Хочу добавить, что уровень сложности задачи должен зависеть от вашего опыта, но любую, даже самую легкую задачу можно сформулировать так, что вам самим будет интересно. К примеру, можно добавить шифрование данных, пользовательские профили, поддержку нестандартных сетей, все что угодно. Если же вы совсем новичок, то ничто не пробудит у вас больший интерес, чем программа, которую вы написали сами, и которая (как ни странно) РАБОТАЕТ!
Автор: TNR
Дата сообщения: 02.06.2005 06:12
Срочно нужен исходник программы на Borland C+, а точнее просмотрщик BMP файлов под DOS
Автор: teakettle
Дата сообщения: 02.06.2005 18:30
Vitls1 это интересное сообщение от 16:44 01-06-2005
есть над чем подумать.
Автор: Jeck
Дата сообщения: 05.06.2005 09:40
У меня вопрос, изучаю С++(Лафоре). В книге есть пример где нужно добавить файлы в проект для консольской гафики. Как это делается в Visual Studio. Если можно подробнее, спасибо.
Автор: MFANiRAGE
Дата сообщения: 11.06.2005 13:24
mmiichae пжалсто обьясни мне почему http://msdn.microsoft.com "самое не то". Я без опыта программирования посчитал что программа Visual C++ 2005 Express Edition Beta 2 довольно удобная вещ...
Автор: mmiichae
Дата сообщения: 11.06.2005 21:23
MFANiRAGE

Цитата:
Я без опыта программирования посчитал что программа Visual C++ 2005 Express Edition Beta 2 довольно удобная вещ...

Я тоже считаю, что Express-редакции то что нужно для новичка, т. к. это удобная, современная и в тоже время не перегруженная лишними фичами IDE + учебник, написанный понятными английским языком.

Я не совсем понял причем здесь http://msdn.microsoft.com?
Автор: MFANiRAGE
Дата сообщения: 13.06.2005 00:15
mmiichae помоги мне пжалсто. Как я понял ты а программировании волокЁш. С чего мне воообще начинать, если я хочу научиться программировать в С++? У меня сейчас стоит WinXP мне мона начать обучение с ним?
З.Ы. Я раньше не программировал.
Автор: mmiichae
Дата сообщения: 13.06.2005 13:07
MFANiRAGE

Цитата:
С чего мне воообще начинать, если я хочу научиться программировать в С++?

ИМХО, если ты раньше не программировал вообще ни на чем, то С++ в качестве первого языка не годится.

Цитата:
У меня сейчас стоит WinXP мне мона начать обучение с ним?

Сейчас изучать классический С++ под виндами смысла нет, т. к. под винды в скором времени никто писать на С++ и на других не .NET совместимых языках не будет.
Новые API (Avalon, Indigo) почти полность написаны на C# и С++/CLI.
Ведутся исследовательские разработки новой ОС, ядро которой в значительной мере написано на C#!!!

PS: На сколько я знаю, в составе Visual C++ 2005 Express Edition Beta 2 нет компилятора для классическо С++ только для С++/CLI.
Автор: MFANiRAGE
Дата сообщения: 13.06.2005 17:33
"ИМХО, если ты раньше не программировал вообще ни на чем, то С++ в качестве первого языка не годится."

МДААА... ну а если я задался целью программировать на С++ тогда какой язык ты посоветуеш как начальный?

"PS: На сколько я знаю, в составе Visual C++ 2005 Express Edition Beta 2 нет компилятора для классическо С++ только для С++/CLI."

Честно сказать я сам этого незнаю, но у мя стоит Visual C++ 2005 Express Edition Beta 2 и к примеру команда "clrscr();" некомпилируется с сообщ.

"Source.cpp(2) : error C4430: missing type specifier - int assumed. Note: C++ does
not support default-int"

Ну и вообщем ты бы посоветовал мне сменить операционку?

З.Ы. Так я и не понял как тут цитаты делать...
Автор: mmiichae
Дата сообщения: 13.06.2005 19:10
MFANiRAGE

Цитата:
МДААА... ну а если я задался целью программировать на С++ тогда какой язык ты посоветуеш как начальный?

Я в начаеле топика уже писал - Паскаль.

Цитата:
Ну и вообщем ты бы посоветовал мне сменить операционку?

Ну начать конечно можно и под виндой, а то придется еще и в *nix вникать, а это дело не простое для начинающего. Но, как я уже сказал у С++ нет будущего под виндой.

Цитата:
З.Ы. Так я и не понял как тут цитаты делать...

Выделяешь текст, который хочешь сделать цитатой и нажимаешь на линк "нажмите эту ссылку" которая находится слева от сообщения.
Автор: MFANiRAGE
Дата сообщения: 13.06.2005 23:32
mmiichae
БольШлое те спасибо, бью челом =)

Мог бы ты подсказать литературу по Паскалю (на мой уровень) тока есть огромное "но" я живу в Париже...


Цитата:
а то придется еще и в *nix вникать

Конечно я об этом даже не слышал, мог бы ты в кратце сказать что даст это изменение.

Да если не трудно мог бы ты сказать какая у тя операционка и какие ты делал первые шаги в программировании?
Автор: registru
Дата сообщения: 14.06.2005 12:55
Доброе время суток уважаемые господа!
Разбираю примеры из книги Фень Юаня
Программирование графики для Windows.
Скачал с www.piter.com
файлы с примерами.
И 2-й пример из 1 главы не компилируется выдает
следующую ошибку:
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/Hello3.exe : fatal error LNK1120: 1 unresolved externals
Предпологаю, что Visual C++ как то специально настроить надо
в книге про это ни, чего не сказано.
Всем успеха
registru!
Автор: mmiichae
Дата сообщения: 14.06.2005 14:06
MFANiRAGE

Цитата:
Мог бы ты подсказать литературу по Паскалю (на мой уровень) тока есть огромное "но" я живу в Париже...

Т. е тебе надо в электронном и на русском? Если да, то зайди на medigo.ru и http://forum.ru-board.com/topic.cgi?forum=93&bm=1&topic=0479#1

Цитата:
Конечно я об этом даже не слышал, мог бы ты в кратце сказать что даст это изменение.

На начальных этапах может и ничего, но вскоре, когда ты изучишь основные конструкции синтаксис, ОС будет навязывать тебе использование своих или разработанных специально для нее библиотек.
Вот тут и начинается разница. Для Wintel-я это прежде всего MFC, которая вскором времени (пока ты выучишься) никому нафиг не будет нужна. Для юникс подобных систем я думаю С/С++ и STL и boost - еще долго будут основными средствами разработки.

Цитата:
Да если не трудно мог бы ты сказать какая у тя операционка и какие ты делал первые шаги в программировании?

Ах да, совсем забыл я не могу назвать себя состоявшимся программистом и уж тем более преподавателем, поэтому мои советы стоит принимать на свой страх и риск.
Путь, по которому я шел TP->Delphi->C->C++->C#-> сейчас изучаю Java.
Моя первая книга по программирования была "Информатика. Базовый курс" Семакин, Залогова и др. издательство бином. Хоть она и не полность по программированию, но те части которые про него, лучшее, что я видел для начинающих.

Я не считаю, что пройденный мной путь идеален, сейчас я бы советовал такой:
Этап 1:
Язык - Pascal
IDE - Turbo/Borland Pascal 7.xx
ОС: не важна
Книга "Информатика. Базовый курс" Семакин, Залогова и др.
Цель:
1) понять основы структурного программирования, уметь реализовать фундаментальные алгоритмы (сортировки, поиск ...) и структуры данных (стек дек...)
2) Понимать различия между алгоритмом, программой, IDE языком программирования...
3) иметь базовые навыки работы в IDE (отладка...)
Этап 1.1:
Почитать хотя бы бегло книги по алгоритмам и структурам данныех авторов: Вирт, Дейкстра, Кнут ....
Попробовать разные IDE для паскале подобных языков (ObjectPascal, Delphi, FreePascal).
Этап 2.
Начать изучать ООП...
.................................Если интересно, то продолжение последует.
Автор: MFANiRAGE
Дата сообщения: 14.06.2005 17:10
mmiichae Спасибо те большое за помощь.

Если тебя это не затруднит то я бы хотел увидеть продолжение

Кстати ты советуеш первый язык Паскаль, конечно это я не оспариваю, мог бы ты просто обьяснить почему именно он? Из-за доступности и простоты?


Цитата:
я не могу назвать себя состоявшимся программистом

Если быть честным непонял, это значить что твоя профессия не программист? или просто это симвролизирует то что твое имя не у всех не слуху?

Как ты думаеш на ближайшие годы какой из языков бутет более рентабельным?


Автор: OdesitVadim
Дата сообщения: 14.06.2005 18:10
MFANiRAGE
По поводу програмирования для начинающих тоже на стороне Паскаля. В принцепе нужно знать два языка. Этим обычно Нормальный Паскалист и отличается от Сишника.

Цитата:
Как ты думаеш на ближайшие годы какой из языков бутет более рентабельным?

Прогресс стримительная штука. Возможно через два-три года будет популярным совершенно другой язык. Но одно останиться вечно - алгоритмы. Их и надо учить. А на чём реализовывать - другой вопрос. Спомни старую поговорку - сколько знаеш языков - сколько раз ты человек. В програмировании она тоже применима
Автор: mmiichae
Дата сообщения: 14.06.2005 19:38
MFANiRAGE

Цитата:
Если тебя это не затруднит то я бы хотел увидеть продолжение

Будет, но не сегодня

Цитата:
Кстати ты советуеш первый язык Паскаль, конечно это я не оспариваю, мог бы ты просто обьяснить почему именно он? Из-за доступности и простоты?

Паскаль изначально задумывался Виртом именно для обучения, у него хорошо получилось. В отличии от С++ в нем нет конструкции с неочевидной семантикой да и синткаксис более приближен к естественному, что облегчает обучение.
Поэтому основы алгоритмизации изучать советую именно на нем.
Я конечно понимаю тебя и вобщем то всех начинающих, хочется писать сразу что-то нужное, полезное и интересное на промышленном языке, но можно пойти по ложному пути, зацикливаясь на фичах и тонкостях конкретного языка, чему С++ ооччень способствует.
Когда я говорю про первый язык - это не значит что на нем стоит долго останавливаться. Изучил основы и вперед на С++!


Цитата:
или просто это симвролизирует то что твое имя не у всех не слуху?

Да, скорее этот вариант

Цитата:
Как ты думаеш на ближайшие годы какой из языков бутет более рентабельным?

Под виндой очевидно будет использоватся - C# .NET Про другие не знаю.
Автор: MFANiRAGE
Дата сообщения: 14.06.2005 22:27
mmiichae

Ждемс...


Цитата:
твое имя не у всех не слуху?

Да, скорее этот вариант


Это значит что ты работаеш программистом(как я понял). И сейчас ты не жалееш сейчас что стал программистом? Обьясню в чем дело: я еще учусь(мне 16) и у меня есть шанс окончив некоторые заведения пойти работать программистом. Ну как бы даже незная ничего я смогу поступить в университет по программированию(буржуйская страна что поделать). Ну конечно при таком расскладе программист я буду лажевый. Ты мне можеш сказать если в 16 тока начать изучение из меня может получиться что то толковое в области программирования? И вооообще что ты думаеш по поводу моего "случая"?

P.S. зарание обьявляю огромную Благодарность

Добавлено:
OdesitVadim

И твое мнение по этому же поводу?

Добавлено:

Цитата:
Т. е тебе надо в электронном и на русском? Если да, то зайди на medigo.ru и http://forum.ru-board.com/topic.cgi?forum=93&bm=1&topic=0479#1


Много что интересного только какой должен быть принцип определения книги как Полезная или нет?
Автор: mmiichae
Дата сообщения: 16.06.2005 21:21
MFANiRAGE

Цитата:
Это значит что ты работаеш программистом(как я понял).

Не совсем так, я еще учусь в ВУЗе, иногда подрабатываю программистом (если подвернется), но это все не то...

Цитата:
Обьясню в чем дело: я еще учусь(мне 16) и у меня есть шанс окончив некоторые заведения пойти работать программистом. Ну как бы даже незная ничего я смогу поступить в университет по программированию(буржуйская страна что поделать). Ну конечно при таком расскладе программист я буду лажевый. Ты мне можеш сказать если в 16 тока начать изучение из меня может получиться что то толковое в области программирования? И вооообще что ты думаеш по поводу моего "случая"?

Случай как случай, в России почти тоже самое с ВУЗами. Самоорбазование рулит. В ВУЗ все же стоит поступить, там дадут основы, которые новичкам кажутся совсем не нужными, но это не так.


Цитата:
Ждемс...

Этап 2.
Начать изучать ООП...
К этому времени ты уже будешь отличать черное от белого, поэтому подробно не расписвываю
ООП советую начать изучать с С++, потом параллельно С# и Java
Книги "Банда четырех", Фаулер, Страуструп, Ларман
Ты должен понять саму идею ООП, как она помогает созданию программных продуктов, а не зацикливаться на конкретном языке.
Этап 3.
Попробовать низкоуровневое программирование под разные ОС/устройства
Языки понятно какие Asm, С.

После прохождения трех этапов у тебя появится кругозор на современное софтостроение. Выбираешь направление, которое тебе по душе и вперед!
Автор: OdesitVadim
Дата сообщения: 17.06.2005 14:47
MFANiRAGE
Если захотеть - всё можно. ВОт у нас в Академии на защите чел защищал диплом по теме, которая актуальной была лет 20 назад, сейчас - ну никуда. Но он так красиво расказал, что 5 поставили.
Поэтому, ну и что, что те 16. Можеш - работай. Но учиться всегда надо. Универ даёт кроме знаний ещё некоторую культуру. Пообщайся с людьми которые уже заканчивают учиться, и которые не учились - разницу почуствуеш.

Цитата:
Много что интересного только какой должен быть принцип определения книги как Полезная или нет?

Такого принципа нет. Всё зависит от того, кто её читает, от его уровня знаний.
Автор: sk Asgard
Дата сообщения: 17.06.2005 18:13

Цитата:
Пообщайся с людьми которые уже заканчивают учиться, и которые не учились - разницу почуствуеш.

Это не всегда так. На данный момент у нас в стране ситуация такова, что человек имеющий много денег засчёт этих денег и продвигается по учёбе, не увеличивая при этом базу своих знаний. А потом у нас, блин, и врачи с кривыми руками и депутаты с кривыми мозгами... Ладно, что-то я немного палку перегнул =)

А вообще я кодить тоже в 16 начинал, только увлёкся сильно и забросил учёбу, после чего поступил в универ только со второго раза, чуть не загремев при этом армию. Так что лучше этим делом заниматься в меру, уделяя достаточное время школе, пока ты ещё в этой жизни не состоялся.
Автор: MFANiRAGE
Дата сообщения: 19.06.2005 17:02
mmiichae

СпАААсибо те больШое, пока вроде понял чем заниматься в ближайшее время, еще раз спасибо...


OdesitVadim спасиб
sk Asgard спасиб =)

Страницы: 12345678910111213141516171819202122

Предыдущая тема: DELPHI. Счетчик ячеек со значенями, значений ячеек


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.