Pare pytań dot. programowania

Pare pytań dot. programowania
K4
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 13 lat
  • Postów:6
0

Czy jeżeli zacznę się uczyć programować teraz (w wieku 17 lat) to czy mam szanse zostać zawodowym programistą? (kiedy dzieciaki mające 13-14 lat wiedzą więcej ode mnie, a ja nie jestem urodzonym super-programistą)

Czy by zostać programistą muszę iść na studia? (jeżeli tak to będę musiał z matmy się ostro podszkolić bo laik jestem)

Ile zajmuje opanowanie podstaw? (bo ja już parę dni czytam różne kursy c++ i nadal nie rozumiem np. rzutowania, do czego się przydaje sizeof, ogólnie operacji na binarnych i zmiennych tekstowych :/ (trochę się pascala uczyłem to w zasadzie funkcje,procedury i inne takie (oprócz tablic i rekurecji) w miarę rozumiałem ttylko składni musiałem się tychże nauczyć))

Czy do stworzenia prostej gry w 2d potrzebuje czytać dużo dokumentacji? (angielskiego i tak się uczę więc dla mnie nie byłoby to problemem - lizne trochę języka. Po prostu pytam z ciekawości).

hauleth
Moderator
  • Rejestracja:ponad 17 lat
  • Ostatnio:4 dni
0

Dokumentacja to jest zawsze podstawa, niezależnie co piszesz i tak będziesz się wiele razy do niej odwoływał.
Teraz już niekoniecznie trzeba mieć studia informatyczne by pracować w zawodzie, ale zawsze są one dużo lepiej postrzegane.
Wiek nie ma różnicy, dzieciaki 13-14 letnie może i wiedzą co to robi, ale często nie potrafią zbudować z tego bardziej rozbudowanych struktur lub powiązać z danym problemem.
W C++ im więcej wiesz tym okazuje się, że wiesz mniej. Obstawiam, że nauczenie się pierwszego języka zajmie ok. roku, potem już leci coraz szybciej.

BTW:
Mam w klasie kumpli, którzy chcą iść na informatykę, a praktycznie nic nie wiedzą i uczą się dopiero teraz tak na prawdę Pascala od prawie podstaw, więc jak widzisz jak się chce to się da.


edytowany 1x, ostatnio: hauleth
Zobacz pozostałe 4 komentarze
somekind
Niektórych z nich można uznać za niemowlęta.
Riddle
Czemu sądzisz że taki 13/14 latek nie jest w stanie rozwiązać jakiegoś problemu... Weź takiego Patryka27, on pewnie w 10min zrobi więcej niż banda młodych pro haxorów z liceum informatycznego przez tydzień.
hauleth
Hmmm, czy ja generalizowałem, że zawsze to są skończone debile potrafiące jedynie napisać WyderOS czy innego Kopiczka poprzez wyklikiwnie na formie różnych pierdół? Nie. Użyłem słowa "często", które (o ile dobrze znam język polski) nie znaczy to samo co "zawsze". @somekind, są i starsi, którzy zasługują na to miano, np. taki Mariusz.
Riddle
aaa... faktycznie. Masz rację, jest tam słowo 'często'. Mój błąd.
K4
W gwoli ścisłości - też nie zamierzałem obrażać młodszych od siebie (zwłaszcza tych, którzy wiedzą więcej ode mnie).
0

Czy jeżeli zacznę się uczyć programować teraz (w wieku 17 lat) to czy mam szanse zostać zawodowym programistą? (kiedy dzieciaki mające 13-14 lat wiedzą więcej ode mnie, a ja nie jestem urodzonym super-programistą)

Czy 5 lat ma duże znaczenie wobec kariery która trwa powiedzmy 40 lat? Nie za bardzo, jak się postarasz to masz szansę.

Czy by zostać programistą muszę iść na studia? (jeżeli tak to będę musiał z matmy się ostro podszkolić bo laik jestem)

Głupie pytanie. By zostać programistą musisz umieć programować.
A jeżeli chodzi o pracę to wydaje mi się że studia są zalecane, ale można zostać freelancerem itd. Nothing is impossible.

Ile zajmuje opanowanie podstaw? (bo ja już parę dni czytam różne kursy c++ i nadal nie rozumiem np. rzutowania, do czego się przydaje sizeof, ogólnie operacji na binarnych i zmiennych tekstowych (trochę się pascala uczyłem to w zasadzie funkcje,procedury i inne takie (oprócz tablic i rekurecji) w miarę rozumiałem ttylko składni musiałem się tychże nauczyć))

To zależy co według ciebie jest podstawą. Jedni powiedzą że to jest znajomość składni, inni że większości typowych konstrukcji, a jeszcze inni że umiejętność budowania programów. Jeżeli będziesz się zastanawiać ile to zajmie zamiast to robić to marnie to widzę.

Czy do stworzenia prostej gry w 2d potrzebuje czytać dużo dokumentacji? (angielskiego i tak się uczę więc dla mnie nie byłoby to problemem - lizne trochę języka. Po prostu pytam z ciekawości).

dużo dokumenracji? No zależy czy znasz procedury na pamięć, czy juz to robiłeś, czy masz podpowiadanie składowych w IDE itd...

P.S. Czyżby się nagle obudził że nie wie co chce robić w życiu?

Riddle
Idiotą jest ten kto mówi że Impossible is Nothing.
VT
gość ma 17 lat
K4
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 13 lat
  • Postów:6
0

nie, po prostu jestem na kierunku informatycznym (źle przemyślana decyzja - przynajmniej tak myślałem), i tera w drugiej klasie zaczęło się u nas programowanie i w sumie mi się to spodobało (sama idea tworzenia programów). Dlatego się o to pytam - wcześniej nie miałem o czymś takim jak programowanie pojęcia.

VT
  • Rejestracja:ponad 16 lat
  • Ostatnio:7 miesięcy
  • Postów:167
0

ja pierwszy komputer kupiłem dopiero pod koniec liceum a pracuję jako programista;) więc nie masz się czego bać, są 14 letni, ale są i 50 letni programiści. Jeżeli Cię to interesuje, poświęcisz na to kupę czasu to droga jest przed Tobą otwarta. Studia dużo dają, nie trzeba iść, ale warto. Powiem tak, znam dużo gości po studiach, którzy programować nie potrafią, ale w drugą stronę to nie działa.
Matma w pracy klepacza kodu potrzebna jest na poziomie niewiele wyższym niż w LO. No ale bez matmy studiów nie skończysz, więc warto przysiąść.

CK
Co masz na myśli pisząc 'w drugą stronę to nie działa'?
VT
że mało znam ludzi bez studiów, którzy programować potrafią. Oczywiście są wyjątki: geniusze samouki, ale to tylko wyjątki.
CK
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 13 lat
2

Kim wg Ciebie jest klepacz? Z twego tekstu wynika, że jest to osoba, która nie odczuwa potrzeb stosowania matmy. Czy zatem user bswierczynski jest klepaczem? Nawet jeśli jest korporacyjnym programista to podejrzewam, że w pracy ma możliwość stawiania wyzwań interesującym problem. Co wcale go nie przekreśla z bycia zajebistym programistą.

Czy jeżeli zacznę się uczyć programować teraz (w wieku 17 lat) to czy mam szanse zostać zawodowym programistą? (kiedy dzieciaki mające 13-14 lat wiedzą więcej ode mnie, a ja nie jestem urodzonym super-programistą)

Masz szansę.

Czy by zostać programistą muszę iść na studia? (jeżeli tak to będę musiał z matmy się ostro podszkolić bo laik jestem)

Nie musisz, ale możesz.

Ile zajmuje opanowanie podstaw?

Zależy.

VT
  • Rejestracja:ponad 16 lat
  • Ostatnio:7 miesięcy
  • Postów:167
0

hmm, tak palnąłem:), miałem na myśli kogoś zajmującego się programowaniem, aplikacji biznesowych, stronek itp, a nie zajmuje się wynajmowaniem nowych algorytmów szyfrowania-czyli takiego typowego programistę. Nie użyłem tego jako określenia negatywnego. Matma przydaje się, jest podstawą, ale osobiście nie wykorzystuję jej w takim stopniu jak nauczyłem się na studiach. Właściwie mógłbym się bez matmy na studiach obyć, z wyjątkiem może algebry(macierze itp). Oczywiście to zależy co programujesz, ale raczej mało kto implementuje sam algorytmy sortowania czy inne dziwne algorytmy.
Mi się znacznie bardziej przydaje wszystko co związane z inżynierią oprogramowania.
Co do bswierczynskiego-nie wiem, nie analizowałem jego postów pod tym kątem

K4
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 13 lat
  • Postów:6
0

Nie chcąc zakładać nowego tematu...

Kopiuj
#include <iostream>
#include <conio.h>


//* deklaracje funkcji


int dodaj( int iX, int iY )
{
    return iX+iY;
}

int odejmij(int iX,int iY)
{
    return iX-iY;
}

int pomnoz(int iX,int iY)
{
    return iX * iY;
}

int podziel(int iX,int iY)
{
    if (iY==0)
    {
              std::cout << "Operacja jest niemozliwa poniewaz liczba dzielaca jest zerem" << std::endl;
              }
    else
    {
        return iX/iY;
        }
}
//* koniec deklaracji funkcji

int main()
{
    std::cout << "jaka operacje chcesz wykonac?\n 1 - dodawanie\n 2 - odejmowanie\n 3 - mnozenie \n 4 - dzielenie :"<<std::endl;
    int intWybor;
    std::cin >> intWybor;
    std::cout << "podaj dwie liczby dla jakich chcesz wykonac ta operacje" << std::endl;
    int iA;
    int iB;
    int iWynik;
    std::cin >> iA;
    std::cin >> iB;
    switch (intWybor)
    {
           case 1: iWynik = dodaj(iA,iB);
           case 2: iWynik = odejmij(iA,iB);
           case 3: iWynik = pomnoz(iA,iB);
           case 4: iWynik = podziel(iA,iB);
           }
    std::cout << "wynikiem tego dzialania jest : " << iWynik << std::endl;
           getch();
}

Czemu zawsze w wyniku zwracana jest wartość 1? :/

@Edit: Dobra, rozwiązane - teraz kolejny problem :

Kopiuj
   switch (intWybor)
    {
           case 1: iWynik = dodaj(iA,iB);
           break;
           case 2: iWynik = odejmij(iA,iB);
           break;
           case 3: iWynik = pomnoz(iA,iB);
           break;
           case 4: if (iB == 0)
                   {
                          std::cout << "operacja nie jest mozliwa poniewaz liczba dzielaca jest zerem..." << std::endl;
                          }
                   else
                   {
                      iWynik = podziel(iA,iB);
                       }
           break;
    }
    std::cout << "wynikiem tego dzialania jest : " << iWynik << std::endl;
           getch();

Nie mam pomysłu jak zakończyć działanie programu, kiedy wybieram opcje dzielenia a liczba dzieląca jest zerem... (wyświetla się wynik jakiś dziwny ;/) Wiecie jak poprawić?

edytowany 1x, ostatnio: kaliber44
Endrju
A gdzie break po case?
K4
już wstawiłem, dodatkowo musiałem wstawić warunek gdzie indziej by wyniku nie wyświetlało.
K4
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 13 lat
  • Postów:6
0

Wybaczcie brak mojego ogarnięcia, pomimo późnej godziny postanowiłem napisać tabliczkę mnożenia za pomocą pętli for.

Kopiuj
int main()
{
    int i,j,w;
        for (i=1;i<=10;i++)
        {
            for (j=1;j<=10;j++)
            {
                w=i*j;
                std::cout << w;
                std::cout << "   ";
                }
         std::cout << std::endl;
         }
         getch();
}

Problem polega na tym, że tabliczka i owszem - wyświetla się - tylko chciałbym aby każda liczba z tej tabliczki była posortowana, tzn żeby było 10 kolumn a nie rozmajzel jakiś :/ w Pascalu problem ten rozwiązywało się określając ile ma przyjąć miejsc po przecinku zmienna - w c++ nigdzie takiego czegoś nie mogłem wyszukać...

Pozdrawiam i dziękuję za wszelkie porady.

edytowany 1x, ostatnio: kaliber44
KR
  • Rejestracja:prawie 16 lat
  • Ostatnio:5 miesięcy
  • Postów:2514
1

std::cout.precision(4);

jak używasz printf/scanf to dużo łatwiej się formatuje dane (wg. mnie)

tutaj na dole masz wszystkie metody co możesz wywołać na cout:
http://www.cplusplus.com/reference/iostream/ostream/


░█░█░█░█░█░█░█░█░█░█░█░
edytowany 1x, ostatnio: krwq
Zobacz pozostały 1 komentarz
Patryk27
somekind musi mieć do wszystkiego obrazek; czytanie męczy.
Azarien
somekind: a widzisz jakiś czytelniejszy i prostszy sposób na przedstawienie liczby cztery, inny niż: "4"?
KR
np. 4 kreski albo 4 jabłka
Patryk27
somekindowi pewnie trzeba by było pokazać 4 cycki, aby załapał o co chodzi...
somekind
Albo 4 raciczki. ;) @Azarien, pisałem o formatowaniu stringów, a nie o indyjskim europeizowanym zapisie liczb.
K4
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 13 lat
  • Postów:6
0

Cholera, dzisiaj próbowałem napisać sam algorytm obliczający silnie, zajęło mi to około pół godziny, a i tak algorytm był zły :/.

Chyba będę musiał wrócić do początku książki i na nowo sobie wszystko powtórzyć... też tak mieliście? :/

K4
mistrz, który zapomniał podstaw to dupa nie mistrz :D
0

http://www.helpbay.org/discussion/70 przeczytaj to, a rozwiejesz swoje wątpliwości typu "czy muszę wracać do początku książki" to co tobie brakuje to odrobina wiedzy matematycznej (ale i tak to przeczytaj :) )

K4
czyli ćwiczyć samą majce czy może sięgnąć po jakąś książkę z algorytmami? Bo jeżeli chodzi ci o to drugie, to odpada (większość dotyczy układania algorytmu opartej na wiedzę co najmniej średniej szkoły...). P.S. jakbym wam niektórym podał moje oceny z matematyki, to byście się przerazili (nie znałem wzorów skróconego mnożenia do dziś... :)
K4
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 13 lat
  • Postów:6
1

Dobra, po dłuższym zastanowieniu mam bardzo duże braki w matematyce... Będę musiał sam na rękę się podszkolić i powtórzyć materiał od gimnazjum... nie będę was już dręczył moimi banalnymi rozterkami :P. Odpiszę za jakieś 2-3 tygodnie. Dzięki wszystkim za posty i komentarze.

0

Kup sobie Symfonie C++ Standard Jerzego Grębosza...

Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)