Pokaż pełną wersje : Moj pierwszy programik :P
Siema.
Od dzis zaczelem sie uczyc C++, trodzke mi nie szlo, ale co tam :p
I zrobilem swoj PIERWSZY program ( o ile mozna to tak nazwac :P).
Jest on banalny, ale co moglem zrobic uczac sie C++, przez kilkadziesiat minut?
Polega on na obliczaniu czasu potrzebnego do uzyskania podanej przez Was many. Podaje on go w minutach, godzianch oraz dniach.
Tak jak wspomnialem jest to moj pierwszy ehm ehm.... program, wiec prosze o wyrumialosc.
Oto link http://www.megaupload.com/?d=32AAT04O
Mam nadzieje ze nie bedzie komentarzy w stylu "Co za badziew", " Po co to komus", "Keylogger" itp. Gdyz jak juz kilka razy wspomnialem uczylem sie C++ niespelna godzine i jakos musialem "przetestowac" swoje mozliwosci. Robilem go w notatniku, a nastepnie skompilowalem Borland'em 5.5.
A dla znajacych jezyk prosze o jakies wskazowki i co zrobielm zle co niepotrzebnie dalem itp.
#include <iostream.h>
#include <conio.h>
main ()
{
float a ;
float b ;
float c ;
float e = 60 ;
float f = 24 ;
float g ;
float h ;
cout << "Program oblicza ile potrzeba czasu na zregenerowanie sie danej ilosci many.\n" ;
cout << "Podaj ilosc many:\n";
cin >> a ;
cout << "Ilosc many zdobywanej w ciagu jednej minuty\n( E.Knight i Knight 4 many, \nR.Pall 10 many, Pall 7.5 many, \nSorc i Drut po 10 many, E.Drut i M.Sorc po 15 many ):\n";
cin >> b ;
c = a / b ;
g = c / e ;
h = g / f ;
cout << a << " many uzupelni sie w ciagu " << c << " minut, czyli " << g << " godzin, czyli " << h << " dni." ;
cout << "\nCya" ;
getch () ;
return 0 ;
}
daroslaw
24-08-2005, 19:22
dlaczego program odrazu sie zamyka po 1 obliczeniu? dopracuj to ;] co prawda nie znam sie c++ to ci zabardzo nie pomoge. Łatwiejszy jest pascal wdg mnie
edit: i cos z obliczaniem masz zjechane.
no i wlasnie gz pierwszego programiku
Vanhelsen
24-08-2005, 20:07
Mozna go skrócić:
float a, b, c, g, h ;
float e = 60 ;
float f = 24 ; ;)
Co to wstukiwania drugiej częsci, to lekko nie wiadomo co zrobić, trzeba samemu wygłówkować, można to było lepiejskombinować :P
Oto, moja, już od dawna gdzieś potajemnie, powoli robiona wersja kalkuratorka :P
P.S.
Polecam zamiast a, b, c... pisać np: mana, godz, min. To ułatwia sprawę, w kapowaniu, do czego dokładniej dana wartość ma się odnosić.
#include <iostream.h>
main()
{
/* programowanie danych */
short int a, b, c, reg, menu ; // wpisywanie danych, czas w s.
float z, y, x ; // ilosc czasu w min i godz
/*----------------------------------------------------------------------------*/
menu:
/* menu wybierania */
cout << "|>--<[xxx MENU xxx]>--<|\n\n"
<< ":: Wybierz program:\n[1]Licznik Many\n[2]Licznik Predkosci\n"
<< "[3]Exit -> " ;
cin >> menu ;
switch(menu)
{
case 1 :
goto licznik_many ;
break ;
case 3 :
goto exit ;
break ;
case 2 :
goto licznik_predkosci ;
break ;
default :
cout << "\n\n\a[!!!] TAKA OPCJA NIE ISTNIEJE! [!!!]\n\n\n" ;
goto menu ;
break ;
}
/*----------------------------------------------------------------------------*/
licznik_many:
/* mechanizm liczacy */
cout << "\n|>--<[xxx LICZNIK MANY xxx]>--<|\n "
<< "\n:: Czy posiadasz promocje?\n[1]Nie\n[2]Tak\n -> " ;
cin >> menu ;
switch(menu)
{
case 1 :
reg = 6 ;
break ;
case 2 :
reg = 4 ;
break ;
default :
cout << "\n\n\a[!!!] TAKA OPCJA NIE ISTNIEJE! [!!!]\n\n\n" ;
goto licznik_many ;
break ;
}
cout << "\n:: Podaj ilosc pkt many: \n -> " ;
cin >> a ; // wpisywanie many
cout << ":: Podaj ilosc run/czarow do zrobienia: \n -> " ;
cin >> b ; // wstukiwanie ilosci run
z = a * reg * b ; // obliczanie sekund
y = z / 60 ; // obliczanie minut
x = y / 60 ; // obliczanie godzin
cout << "\n" ;
/* wpisywanie wynikow */
cout << "\a@ " << a << " many na "
<< b << " run/czarow zregeneruje sie w:\n\n\a@ " << z
<< " sec.\n\a@ " << y << " min.\n\a@ " << x << " godz.\n\n";
goto menu ;
/*----------------------------------------------------------------------------*/
licznik_predkosci:
/* mechanizm liczacy */
cout << "\n|>--<[xxx LICZNIK PREDKOSCI xxx]>--<|\n "
<< "\n:: Podaj level postaci: \n -> " ;
cin >> a ;
cout << "\n[1]BoH\n[2]Time Ring\n[3]BoH + Time ring\n[4]Nic\n -> " ;
cin >> menu ;
switch(menu)
{
case 1 :
reg = 40 ;
break ;
case 2 :
reg = 60 ;
break;
case 3 :
reg = 100 ;
break ;
case 4 :
reg = 0 ;
break ;
default :
cout << "\n\n\a[!!!] TAKA OPCJA NIE ISTNIEJE! [!!!]\n\n\n" ;
goto licznik_predkosci ;
break ;
}
b = 200 + ( 2 * (a - 1 )) + reg ;
cout << "\n" ;
/* wypisywanie wynikow */
cout << "\a@ " << a << " levelowa postac osiaga predkosc "
<< b << " jednostek.\n\n" ;
goto menu ;
/*----------------------------KONIEC--PROGRAMU--------------------------------*/
exit: ;
}
Duke Dran
24-08-2005, 20:11
fajna sprawa, może tez zacznę się uczyć c++
binek1986
24-08-2005, 20:24
@Wieszok & Moo
Chlopaki chlopaki ;>
Programisci od dawna juz wiedza ze zmienne powinno sie opisywac bardziej dokladnie, zeby po paru dniach wiedziec co jest co.
Proponuje przyzwyczajac sie do tego od poczatku zeby pozniej latwiej szlo ;-), np zamiast nazwac zmienna "a" mozna bylo nazwac ja "lv", mala roznica a przy wiekszej ilosci zmiennych latwiej dojsc co jest do czego.
Tak btw gratuluje programu, widac ze nie jest to typowy "Hello World" od ktorego wiekszosc nas, programistow, uczylo sie programowac ;-).
Nightwalker
24-08-2005, 20:28
Ja mam pytanie bardzo newbiowsko/noobowskie
Ile kosztuje C++ (By programowac) a ile Turbo Pascal 7.0?
Vanhelsen
24-08-2005, 20:28
@Wieszok & Moo
Chlopaki chlopaki ;>
Programisci od dawna juz wiedza ze zmienne powinno sie opisywac bardziej dokladnie, zeby po paru dniach wiedziec co jest co.
Proponuje przyzwyczajac sie do tego od poczatku zeby pozniej latwiej szlo ;-), np zamiast nazwac zmienna "a" mozna bylo nazwac ja "lv", mala roznica a przy wiekszej ilosci zmiennych latwiej dojsc co jest do czego.
Tak btw gratuluje programu, widac ze nie jest to typowy "Hello World" od ktorego wiekszosc nas, programistow, uczylo sie programowac ;-).To zalerzy, ja u ciebie, np: urzywam czterech-pięciu zmiennych, na krzyż przeplatanych raz to w jednym pod-programiku, raz to w drugim :P więc gdybym dla przykłądu "a" nazwał "level" a potem w kolejnym podprogramie używał go jako zmiennik ilości many, to bym chyba bardziej się mylił :P
@up: eee.... chyba nic ;) tyle co książki i chęc do nauczenia się :P czyli coś koło 80zł + 2kg strzępek nerwów :P
@Wieszok & Moo
Chlopaki chlopaki ;>
Programisci od dawna juz wiedza ze zmienne powinno sie opisywac bardziej dokladnie, zeby po paru dniach wiedziec co jest co.
Proponuje przyzwyczajac sie do tego od poczatku zeby pozniej latwiej szlo ;-), np zamiast nazwac zmienna "a" mozna bylo nazwac ja "lv", mala roznica a przy wiekszej ilosci zmiennych latwiej dojsc co jest do czego.
Tak btw gratuluje programu, widac ze nie jest to typowy "Hello World" od ktorego wiekszosc nas, programistow, uczylo sie programowac ;-).
Zawsze można nawpierdzielać komentarzy ;p.
@Topic
Zrobieś ten program po kilkudziesięciu minutach nauki c++? Zdolny jesteś ;).
Jackal Silentdark
24-08-2005, 20:43
Bardzo dobrze, ucz sie C++, super język i universalny, potem nawet jak będziesz musiał sie przerzucic na pascala etc. to będzie o wiele łatwiej.
Imho po kilkudziesięciu minutach napisałeś ten program to ci wróże karierę programisty. :p
no stary wielkie GZ :D, ja dopiero od wczoraj sie tego ucze i duzo jeszcze nie rozmie ale jak to powiedzil kald C++ to jedeny słuszny jezyk do programowania =P
Gniew Mroku
24-08-2005, 21:21
@Nightwalker & inni którzy chcą się w c++ bawić: zalecam DARMOWY kompilator Dev-cpp ( http://www.bloodshed.net/ ). Zajmuje pare mega.
@cafe (inni nie czytać, bo coś źle możecie zrozumieć): Kald i Vall uważają że #C rox. Popytaj ich jakie to qul :P
@topic: Nawet ładnie jak na początek programowania w c++. Podejrzewam, że masz jakąś znajomość programowania, ale i tak szybko uczysz się c.
binek1986
25-08-2005, 00:31
@Nightwalker:
Wszystko jest w internecie ;>, wystarczy tylko przylozyc sie i poszukac :D.
Kursy za darmo, nie potrzeba az tak bardzo ksiazek, znalezc forum jakies lub grupe dyskusyjna pozniej i wszystkiego mozna sie nauczyc. Kompilatory tez sa dostepne za darmo, cala masa razem z calymi srodowiskami do programowania, debuggerami i wszystkim innym co jeszcze jest potrzebne.
@Wieszok:
Skoro tak to widac ze zle troche zaczales ;-). Powinienes od samego poczatku nauczyc sie odpowiednio nazywac zmienne i bylby luuz, albo w ostatecznosci wystarczy, tak jak Thero napisal, powstawiac komentarze do zmiennych na samym poczatku co tez bardzo ulatwi prace nad programem w przyszlosci.
@Jackal Silentdark:
Jak bedzie umial C/C++ to nie bedzie potrzeby przesiadania sie na pascala ;-).
@Gniew Mroku:
Hehe. Ja do programowania osobiscie podchodzilem jak do nauki jezyka obcego. Nauczyc sie polecen, skladni a pozniej to juz sama logika i doswiadczenie ktore bedzie przybywac z dnia na dzien ;>.
Vanhelsen
25-08-2005, 01:01
@Wieszok:
Skoro tak to widac ze zle troche zaczales ;-). Powinienes od samego poczatku nauczyc sie odpowiednio nazywac zmienne i bylby luuz, albo w ostatecznosci wystarczy, tak jak Thero napisal, powstawiac komentarze do zmiennych na samym poczatku co tez bardzo ulatwi prace nad programem w przyszlosci.Tylko, ze te zmienne opisują wiele rozmaitych, nie zawsze takich samych danych, w tym przypadku łatwiej mi jest korzystać z a/b/c ale normalnie to bawie się w lev/mp/hp/sec itp
binek1986
25-08-2005, 01:27
@Wieszok:
Spox, nie mam zamiaru nikogo uczyc na sile, w koncu kazdy ma wlasny styl
:-).
@topic: Nawet ładnie jak na początek programowania w c++. Podejrzewam, że masz jakąś znajomość programowania, ale i tak szybko uczysz się c.
Fakt, kiedys probowalem uczyc sie Pascala, stad latwo mi bylo pojac zmienne itp. Ale znudzilo mi sie po kilku godzinach nauki.
Co do nazywania zmiennych np. mana, lvl to nie pomyslalem ze bedzie przydatne. Dzieki wszystkim za dobre slowa i za pomoc. Mam nadzieje ze kiedys napisze cos lepszego :D
@cafe (inni nie czytać, bo coś źle możecie zrozumieć): Kald i Vall uważają że #C rox. Popytaj ich jakie to qul :P
a no, jest qul =P
tutaj macie kompilator: http://sm00f.boo.pl/download/devcpp_v4_990*****
jest po polsku
a tu macie poradniki do C++ http://it.hk.pl/
Nightwalker
25-08-2005, 11:05
@wszsycy co pomogli
Wielkie dzięki :) niedługo wezme sie do nauki :)
a teraz was troche zgasze :P:P:
1 stycznia 1998 roku Bjarne Stroustrup udzielił wywiadu dla jednego z czasopism komputerowych - "IEEE Computer". Wydawcy myśleli, że będzie to nawiązanie do minionych siedmiu lat programowania obiektowego za pomocą języka, który sam stworzył. W trakcie wywiadu, prowadzący go redaktor został dość niemile zaskoczony przez swojego rozmówcę, co było powodem późniejszej chęci zatajenia treści wywiadu przez wydawców, tłumaczonej "dbaniem o dobro przemysłu komputerowego". Jednak jak to zwykle bywa w takich przypadkach, również i tutaj wystąpił tzw. przeciek informacji. Oto kompletny odpis tego co zostało powiedziane, bez jakichkolwiek obróbek merytorycznych. Dlatego też nie wygląda to tak, jak w przypadku innych, wcześniej uzgadnianych wywiadów. Jednak myślę, że spotka się to z zainteresowaniem....
Redaktor: Minęło już parę lat odkąd zrewolucjonizowałeś świat programowania. Co o tym myślisz, patrząc wstecz na swoje dokonania?
Stroustrup: Właściwie myślałem o tym tuż przed twoim przyjściem. Pamiętasz?... Wszyscy pisali w C, a problemem było to, że byli w tym cholernie dobrzy. Również uniwersytety były dobre w nauczaniu tego języka. W bardzo szybkim tempie wypuszczali na świat wykwalifikowanych (podkreślam słowo: wykwalifikowanych) absolwentów. To właśnie spowodowało problem.
Redaktor: Problem?
Stroustrup: Tak, problem. Pamiętasz jak dawniej wszyscy pisali w Cobol-u?
Redaktor: Oczywiście, ja też w tym pisałem...
Stroustrup: Więc na początku ci ludzie byli jak półbogowie. Mieli wysokie pensje, i traktowani byli niemalże jak członkowie rodziny królewskiej.
Redaktor: To były czasy..., prawda?
Stroustrup: Właśnie! I co się stało? Firma IBM miała tego dosyć, więc zainwestowała miliony dolarów na wytrenowanie tylu programistów, aż było ich dosłownie na pęczki.
Redaktor: Z tego właśnie powodu ja też odszedłem. Pensje spadły w przeciągu roku na tyle, że bardziej opłacało się pisanie artykułów do magazynów.
Stroustrup: Dokładnie. To samo stało się z programistami piszącymi w C.
Redaktor: No tak. Ale do czego zmierzasz?
Stroustrup: Otóż pewnego dnia, kiedy siedziałem w swoim biurze, myślałem nad czymś co wprowadziłoby trochę równowagi do ówczesnej sytuacji. Zastanawiałem się co by było, gdyby istniał język na tyle skomplikowany i trudny do nauczenia, że nikt nie byłby w stanie zalewać rynku programistami. Miałem parę pomysłów z X10, no wiesz, X windows. To dopiero było okropne środowisko graficzne... chodziło tylko na maszynach typu Sun 3/60. Ale miało wszystkie składniki jakich potrzebowałem: naprawdę śmiesznie skomplikowaną składnię, mętne i niejasne funkcje oraz pseudo obiektową strukturę. Nawet w dzisiejszych czasach, nikt kto chce pozostać przy zdrowych zmysłach, nie pisze w czystym kodzie X-windows.
Redaktor: Chyba żartujesz...?
Stroustrup: Ani trochę. Był też kolejny problem. Unix został napisany w C, a to znaczyło że każdy programista piszący w tym języku, mógł bardzo łatwo przejść na pisanie systemów operacyjnych. Pamiętasz chyba ile wtedy programista takich głównych systemów zarabiał ?
Redaktor: Jasne że tak, sam też się tym zajmowałem....
Stroustrup: Zatem ten nowy język musiał oddzielić się od Unix-a, ukrywając wszystkie wywołania systemowe. To umożliwiłoby zarobienie paru groszy również tym, którzy znali tylko DOS-a.
Redaktor: Nie wierzę, że to powiedziałeś...
Stroustrup: No cóż, minęło już trochę czasu i moim zdaniem większość ludzi odkryła, że całe C++ to tylko strata czasu, choć muszę powiedzieć, że zajęło im to o wiele dłużej niż przypuszczałem.
Redaktor: Zatem, jak udało ci się osiągnąć taki sukces ?
Stroustrup: To miał być tylko żart. Nigdy nie sądziłem, że ludzie mogliby brać moją książkę na poważnie. Każdy, nawet półgłówek dostrzeże, że programowanie zorientowane obiektowo jest nielogiczne, niewydajne i działa wbrew intuicji.
Redaktor: Co?
Stroustrup: A co do wielokrotnego wykorzystywania kodu... - kiedy słyszałeś, żeby jakaś firma działała w ten sposób ?
Redaktor: No..., właściwie to nigdy, ale...
Stroustrup: No właśnie! To znaczy, kilka próbowało w tamtych czasach. Była taka firma z Oregonu - Mentor Graphics, która w '90 albo '91-szym roku próbowała przepisać wszystko na C++ i niestety nie wyszło im to na dobre. Było mi ich naprawdę żal ale uważam, że ludzie powinni uczyć się na własnych błędach.
Redaktor: Dokładnie. A im się to nie udało ?
Stroustrup: Niestety ani trochę. Problem w tym, że większość firm ma tendencję do tuszowania swoich poważniejszych zaniedbań, a wytłumaczenie się akcjonariuszom ze straty 30 milionów dolarów, byłoby dość trudne. Sprawiedliwości stało się zadość, jednak w końcu udało im się jakoś wyjść na prostą.
Redaktor: Naprawdę? No więc sam widzisz, że programowanie obiektowe skutkuje.
Stroustrup: Prawie. Pliki ***** były tak duże, że ich załadowanie na maszynie HP ze 128MB RAM-u, trwało pięć minut. Programy uruchamiały się w ślimaczym tempie. Właściwie myślałem, że będzie to główną wadą nowego języka, jednak nikogo to nie obchodziło. Firmy takie jak Sun czy HP były zbyt zadowolone ze sprzedaży swoich mocnych komputerów z ogromnymi zasobami, a wszystko po to tylko, żeby uruchamiać na nich proste, banalne programy. Wyobraź sobie, że kiedy pojawił się pierwszy kompilator C++ na komputerze AT&T, skompilowałem pod nim zwykłe "Hello World" i wprost nie mogłem uwierzyć rozmiarowi tego pliku - 2.1 MB.
Redaktor: Co? Zgoda, ale kompilatory bardzo się od tamtego czasu zmieniły.
Stroustrup: Czyżby? Weźmy na przykład ostatnią wersję g++ - nie uzyskasz większej redukcji objętości jak zaledwie o niecałe 0.5 MB. Mógłbym przytoczyć ci jeszcze kilka innych przykładów z całego świata. Swego czasu firma British Telecom miała z tego powodu nie lada katastrofę, ale na szczęście udało im się w porę usunąć problemy i zacząć od nowa. Australian Telecom nie miała tyle szczęścia, co ich brytyjski odpowiednik. Teraz dochodzą mnie słuchy, że Siemens buduje kolejnego "dinozaura" martwiąc się coraz bardziej o to, aby sprzęt równoważył wymagania programów. Czy zatem wielopoziomowe dziedziczenie nie jest po prostu pomyłką ?
Redaktor: Przecież C++ jest bezpiecznym językiem.
Stroustrup: Naprawdę w to wierzysz ? Czy kiedykolwiek pracowałeś nad projektem w C++? Oto co się dzieje: po pierwsze, w C++ istnieje wystarczająco dużo pułapek, dzięki którym tylko najbanalniejsze projekty działają za pierwszym razem. Weź np. przeładowanie jakiegoś operatora. Pod koniec projektu, prawie każdy moduł je posiada, bo w mniemaniu programistów powinno ono wystąpić, przecież o tym mówiono im na kursach szkoleniowych. Zatem ten sam operator w każdym kolejnym module oznacza coś zupełnie innego. A spróbuj nad tym zapanować, kiedy będziesz miał około setki modułów... A co do ukrywania danych: O Boże, czasami nie sposób się nie roześmiać, kiedy słyszę o firmach starających się sprawić aby ich moduły ze sobą współpracowały. Myślę, że słowo "synergetyczny" zostało specjalnie wymyślone, aby można było szefowi projektu "przekręcać nóż w żebrach".
Redaktor: Muszę przyznać, że zaczynam być tym wszystkim przerażony. Mówisz, że stworzyłeś ten język po to, aby wzrosły pensje programistów? To okropne!
Stroustrup: Nie zupełnie. Przecież każdy ma wybór. Nie przypuszczałem, że aż tak bardzo wymknie się to spod kontroli, jednak stało się. C++ już stopniowo wymiera, ale programiści dalej są dobrze opłacani - szczególnie ci, którzy zajmują się tworzeniem projektów za pomocą tego steku bzdur. Zdajesz sobie sprawę, że pracowanie nad dużym modułem programu w C++ nie jest możliwe, jeśli sam go nie napisałeś ?
Redaktor: Jak to ?
Stroustrup: Nie kojarzysz o czym mówię, prawda? A pamiętasz dyrektywę: typedef?
Redaktor: Oczywiście że tak.
Stroustrup: Przypomnij sobie ile czasu zabiera śledzenie "po omacku" plików nagłówkowych tylko po to, aby dowiedzieć się że np. 'RoofRaised' to liczba typu double. Wyobraź sobie ile czasu zabiera znalezienie wszystkich konkretnych dyrektyw typedef we wszystkich klasach jakiegoś większego projektu.
Redaktor: Po czym zatem poznałeś swój sukces ?
Stroustrup: Pamiętasz ile zajmowało stworzenie średniej objętości projektu w C ? Około 6 miesięcy. To trochę za krótko, aby facet mający żonę i dzieci mógł zarobić na utrzymanie i w miarę godziwy standard życia. A weź teraz napisz ten sam projekt używając C++...i co otrzymasz? Powiem ci - jeden do dwóch lat. Czyż to nie wspaniałe zapewnienie sobie pracy? Kolejna rzecz. Uniwersytety nie nauczały C od tak dawna, że teraz brakuje porządnych programistów piszących w tym języku. Szczególnie tych, którzy wiedzą coś na temat programowania pod systemami z rodziny Unix-a. Ilu teraz wiedziałoby co zrobić z 'malloc', skoro przez tyle lat używali 'new' - i nigdy nie zaprzątali sobie głowy sprawdzaniem wartości zwracanego kodu. W rzeczywistości, większość z programistów C++ pomija te zwracane wartości. Co się stało ze starym, dobrym '-1' ? Przynajmniej wiedziałeś, że masz błąd, bez grzęźnięcia w cały ten bałagan z 'try', 'throw' i 'catch'.
Redaktor: Ale przecież dziedziczenie oszczędza mnóstwo czasu i pracy...
Stroustrup: Tak sądzisz? Czy kiedykolwiek zauważyłeś różnicę między planowaniem projektu w C, a planowaniem projektu w C++? To drugie jest trzy razy dłuższe. Musisz dokładnie upewnić się, że wszystko co powinno być dziedziczone, jest dziedziczone, a wszystko co nie powinno - nie jest. A potem i tak występują w tym błędy. Kto przedtem słyszał o jakiejś konsumpcji pamięci przez program napisany w zwykłym C? A teraz znajdywanie ich, to chleb powszedni. Większość firm pod tym względem poddaje się, wypuszczają na rynek swój produkt, wiedząc że cieknie z niego jak z dziurawego worka, no ale wtedy unikają kosztów związanych z łataniem tych dziur.
Redaktor: Są do tego odpowiednie narzędzia...
Stroustrup: ...z których większość została napisana w C++.
Redaktor: Czy zdajesz sobie sprawę z tego, że jeśli opublikujemy ten wywiad, to prawdopodobnie zostaniesz "zlinczowany" ?
Stroustrup: Wątpię. Jak już powiedziałem, C++ minął już swój szczyt rozkwitu i popularności i żadna firma przy zdrowych zmysłach nie zacznie tworzenia projektu w C++ bez wstępnych prób. One powinny ich przekonać, że zmierzają prosto ku katastrofie. A jeśli tego nie zauważą, to niech mają na co zasłużyli. Wiesz, próbowałem kiedyś przekonać Dennis'a Ritchie, aby przepisał Unix-a w C++.
Redaktor: O mój Boże..., i co powiedział?
Stroustrup: Na szczęście ma poczucie humoru. Myślę że obaj, on i Brian Kernighan już wtedy zorientowali się o co mi chodzi, ale trzymali to w tajemnicy. Dennis powiedział, że jeśli chcę, to pomoże mi napisać w C++ wersję DOS-a.
Redaktor: A chciałeś ?
Stroustrup: Właściwie to napisałem DOS-a w C++. Jak skończymy, to dam ci wersję demo. Działa to u mnie na Sparc 20. Chodzi jak rakieta przy czterech procesorach i zajmuje tylko jakieś 70 MB twardego dysku.
Redaktor: A jak się sprawuje na zwykłym PC ?
Stroustrup: Teraz to sobie żartujesz. Czy nigdy nie widziałeś Windows'95? Myślę o nim jak o moim największym sukcesie. Prawie przegrałem, zanim cokolwiek się zaczęło.
Redaktor: Wiesz, ten pomysł na Unix++ naprawdę mnie zastanawia. Gdzieś na świecie ktoś na pewno się za to weźmie.
Stroustrup: Na pewno nie, jeśli przeczyta ten wywiad.
Redaktor: Przykro mi, ale nie wydaje mi się, żebyśmy mogli cokolwiek z tego opublikować.
Stroustrup: Ale to jest opowieść stulecia. Ja chcę tylko, żeby wszyscy moi koledzy po fachu pamiętali mnie za to, co dla nich zrobiłem. Wiesz ile zarabia w dzisiejszych czasach programista znający C++ ?
Redaktor: Ostatnio słyszałem, że ci najlepsi dostają $70 - $80 za godzinę.
Stroustrup: Widzisz? I założę się, że są tyle warci. Śledzenie wszystkich tych "pułapek" jakie umieściłem w C++ nie jest wcale łatwe. Tak jak już mówiłem wcześniej, każdy programista piszący w C++ czuje się związany jakąś mistyczną obietnicą do używania w swoich projektach każdego przeklętego elementu tego języka. Czasami to naprawdę mnie denerwuje, nawet jeśli jest zgodne z moim pierwotnym celem. Po tych wszystkich latach, prawie polubiłem ten język.
Redaktor: To znaczy, że przedtem go nie lubiłeś ?
Stroustrup: Nienawidziłem go. Wydaje się nawet niezgrabny, zgodzisz się? Ale kiedy zaczęły przychodzić do mnie tantiemy..... no cóż, sam rozumiesz.
Redaktor: Chwileczkę. A co z referencjami? Musisz przyznać, że ulepszyłeś wskaźniki zwykłego C.
Stroustrup: Hmm... Zawsze się nad tym zastanawiałem. Najpierw myślałem, że faktycznie je ulepszyłem. Potem jednak rozmawiałem o tym z pewnym facetem, który od początku pisał wszystkie swoje programy w C++. Powiedział mi, że nigdy nie może zapamiętać czy jego zmienne przekazywane są przez referencję czy przez dereferencję, więc zawsze używa wskaźników. Powiedział, że ta mała gwiazdka zawsze mu przypomina.
Redaktor: Cóż, w tym momencie zwykle mówię: 'dziękuję ci bardzo za wywiad', ale tutaj nie wydaje się to stosownym.
Stroustrup: Obiecaj mi, że to opublikujesz. Po prostu gryzie mnie sumienie, dlatego cię o to proszę.
Redaktor: Dam ci znać, ale już przeczuwam co powie mój wydawca.
Stroustrup: Ale kto by w to uwierzył? Mimo wszystko, czy możesz przysłać mi kopię taśmy z tym wywiadem ?
Redaktor: OK, to mogę zrobić.
i wielkie gratz dla moo bo ja po kilku godzinach nauki c++ to jescze mniej rozumiałem niż przed jej rozpoczęciem:D
fajny art;) A dla niekumatych: nie traktujcie go serio:)
Knight Simon Dark lord
25-08-2005, 11:39
@Nightwalker & inni którzy chcą się w c++ bawić: zalecam DARMOWY kompilator Dev-cpp ( http://www.bloodshed.net/ ). Zajmuje pare mega.
@cafe (inni nie czytać, bo coś źle możecie zrozumieć): Kald i Vall uważają że #C rox. Popytaj ich jakie to qul :P
@topic: Nawet ładnie jak na początek programowania w c++. Podejrzewam, że masz jakąś znajomość programowania, ale i tak szybko uczysz się c.
dzięki za stronke też chce się uczyć i nie wiedziałem z kąd kompilatora wziąść
Oto, moja, już od dawna gdzieś potajemnie, powoli robiona wersja kalkuratorka :P
Bardzo fajna ta wersja :D
Dzieki niej dowiedzialem sie jak wykorzystywac switche i case :D Wczesniej nie rozumialem tego za bardzo. Nauka idzie mi powoli, gdyz jestem na takim etapie w ktorym powtarzam po kilka razy komendy (ciagle zapominam je). Jeszcze raz dzieki.
ktorym powtarzam po kilka razy komendy (ciagle zapominam je)
Nie rob tego. Nie ucz sie na pamiec. Zrozum dzialanie operatorow, petli, tablic, zmiennych, wskaznikow. ZROZUM. Wklepanie tego nic ci nie da.
A funkcje typu 'printf()', obiekty (count) i inne - po co tego uczyc sie na pamiec. Co zesciej uzywane same wejda ci do glowy a po co paietac te mniej uzywane? Nie dosc, ze w internecie sa gigabajty danych opisujace biblioteki standardowe to zapewne w kazdej lepszej ksiazce jest jako-tako streszczona biblioteka. Mozna przeciez zajrzec.
Traktuj programowanie jak sztuke - cos co robisz dla przyjemnosci. A kto sie lubi uczyc na pamiec?
vBulletin® v3.7.0, Copyright ©2000-2025, Jelsoft Enterprises Ltd.