Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 17 mar 2025, o 23:35


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
    Autor Wiadomość
    PostNapisane: 19 sie 2015, o 18:08 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 18 kwi 2015
    Posty: 60
    Lokalizacja: Bieruń Nowy
    Pomógł: 0

    Witam!
    Czytam BB i jak to Pan Mirek mówił na bieżąco się dopytuje o zagadnienia, których nie rozumiem. Problem pojawił się już na początku książki. Nie zrozumiałem co to są te argumenty, które są przekazywane do każdej funkcji.
    Nie rozumiem również tego co oznacza ten cytat: "Oznacza to, że funkcja zwróci liczbę całkowitą typu int o wartości zero."
    Muszę powiedzieć, że z tego fragmentu BB rozumiem tylko to, że ta liczba ma typ int. Natomiast nie rozumiem dlaczego akurat zero. Wiem, że to trochę banalne i niepotrzebne pytanie, ale nurtuje mnie.
    "Pomimo, że nasza funkcja główna nigdy nie będzie w stanie zwrócić swojego wyniku"
    WTF - dlaczego, przecież zapis funkcji jest poprawny. No chyba, że chodzi o to, że ta funkcja nie ma czego zwrócić, bo jej działanie polega na bezczynności i to w 100%. Ale z drugiej strony wyżej napisałem cytat, który mówi o tym, że funkcja zwróci to niezrozumiałe zero.

    O co chodzi?! Jestem naprawdę początkujący i mam taki charakter, że jak czegoś nie rozumiem to chyba wyjdę z siebie jak tego nie pojmę! :x Dlatego proszę o zwięzłe odpowiedzi wytłumaczające powyższe fragmenty.

    Jeśli ktoś nie wie to cytaty pochodzą z BB str. 10.

    _________________
    Pomagać i prosić o pomoc ;-)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 sie 2015, o 18:51 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2015
    Posty: 269
    Pomógł: 34

    "Pomimo, że nasza funkcja główna nigdy nie będzie w stanie zwrócić swojego wyniku" dlatego że w funkcji głównej znajduje się pętla nieskończona czyli nigdy funkcja nie dojdzie do komendy return .Return zazwyczaj jest na końcu funkcji.
    komenda return służy do zwracania wartości funkcji np:
    return 0; funkcja zwróci 0
    return liczba; funkcja zwróci zawartość zmiennej liczba.

    Może trochę inaczej,
    gdy chcesz np do zmiennej przypisać jakąś wartość to możesz jej przypisać to co zwróci funkcja np:
    int liczba = funkcja(jakieś argumenty);
    wtedy zmienna liczba będzie miała taką wartość jaką zwróci funkcja.
    W książce w rozdziale o języku C tam jest to dokładniej wytłumaczone.Jak nadal nie rozumiesz to napisz postaram się pomóc.
    PS na stronie 113 powinno być to wytłumaczone dokładniej.


    Autor postu otrzymał pochwałę


    Ostatnio edytowano 19 sie 2015, o 18:56 przez Bartek123, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 sie 2015, o 18:55 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27363
    Lokalizacja: Szczecin
    Pomógł: 1043

    Gimbul napisał(a):
    Czytam BB i jak to Pan Mirek mówił na bieżąco się dopytuje o zagadnienia, których nie rozumiem. Problem pojawił się już na początku książki. Nie zrozumiałem co to są te argumenty, które są przekazywane do każdej funkcji.

    No ale w książce podaję przykłady przecież ;) ... ok - może jeszcze raz , pomyśl chwilę, chciałbyś np napisać program kalkulatora, który miałby robić jedną z opcji taką jak co? DODAWANIE .... tak ?

    No to co ? użytkownik może wklepać nam różne dwie dane które mamy dodać do siebie - zgadza się ?

    w takim razie warto przygotować funkcję:

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Jak widać - mamy tu do czynienia z funkcją o nazwie dodawanie() zgadza się ? to rozumiesz chyba

    no i teraz w nawiasach okrągłych przekazujemy do niej jakieś argumenty ;) też zakładamy, że będą miały jakieś typy danych np int

    Jak widzisz funkcja jest prosta - ona bierze te dwa argumenty, dodaje jeden do drugiego i zwraca je jako rezultat ... też typu int. Oczywiście może wystąpić tu błąd jeśli przekroczymy zakresy ale jeśli będą to małe liczby (nie ważne czy dodatnie czy ujemne np 4 i 5) to gdy wywołamy funkcję

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    to wynik przyjmie wartość = 9

    zgadza się ? .... Jak więc widzisz za pomocą argumentów przekazujemy coś do środka funkcji, która może obliczać coś tam i zwracać wynik

    jaśniej ?

    ------------------------ [ Dodano po: 1 minucie ]

    Gimbul napisał(a):
    Nie rozumiem również tego co oznacza ten cytat: "Oznacza to, że funkcja zwróci liczbę całkowitą typu int o wartości zero."

    Panie - jak robisz cytat - i pytasz o konkretną treść to podaj zawsze stronę i ew numer akapitu żeby można było wiedzieć o czym piszesz - bo ja nie wiem w tym przypadku więc nie umiem odpowiedzieć na tak zadane pytanie


    Autor postu otrzymał pochwałę

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 sie 2015, o 18:58 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 09 gru 2014
    Posty: 1540
    Pomógł: 269

    Gimbul napisał(a):
    nie rozumiem dlaczego akurat zero

    Ponieważ występuje tam instrukcja return 0; której zadaniem jest przekazanie tego co jest po jej prawej stronie, w tym przypadku 0.

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Co do Twojego drugiego pyatnia, to chodzi o to, że mikroprocesor nie posiada systemu operacyjnego, więc główna funkcja int main(void) { } po zakończeniu nawet gdybyśmy zamiast return 0; chcieli zwrócić np 123 (za pomocą return 123;) to nie ma gdzie tego zrwócić, program się po prostu skończy i tyle.

    ------------------------ [ Dodano po: 1 minucie ]

    mirekk36 napisał(a):
    zgadza się ?


    A nie 9? ;)


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 sie 2015, o 19:17 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27363
    Lokalizacja: Szczecin
    Pomógł: 1043

    Cytuj:
    A nie 9?

    heheh 9 bo najpierw wpisałem 2,5 , później zobaczyłem w tekście że pisałem 4,5 więc poprawiłem a wynik został 7 :lol: - ale już poprawiłem - dzięki za uwagę

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 sie 2015, o 20:09 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 18 kwi 2015
    Posty: 60
    Lokalizacja: Bieruń Nowy
    Pomógł: 0

    Dziękuję za rozjaśnienie tematu. ;-)
    Zwłaszcza koledze bartek123 i Panu Mirkowi. Choć co do tego ostatniego to bym się kłócił, bo podałem, że cytaty pochodzą ze strony 10. ;-)
    Teraz widzę jakie to proste i dlaczego funkcje nazywają się funkcje, a nie inaczej. Ładnie to jest wytłumaczone na przykładzie kalkulatora. Naprawdę nie myślałem, że to takie proste. ;-)
    Dziękuję!

    _________________
    Pomagać i prosić o pomoc ;-)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 sie 2015, o 21:09 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27363
    Lokalizacja: Szczecin
    Pomógł: 1043

    Gimbul napisał(a):
    , że cytaty pochodzą ze strony 10

    No to moja wina, przepraszam ale czasem jak robię 100 rzeczy naraz to czegoś nie zauważę

    Najważniejsze, że ci się nie dość , że rozjaśniło to teraz piszesz że to wydaje się proste - i o to chodzi ;)

    Widzisz jak to jest - od razu na bieżąco dopytać gdy się czyta książkę - to jest dobra droga a każdy chętnie pomoże

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sie 2015, o 19:27 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 18 kwi 2015
    Posty: 60
    Lokalizacja: Bieruń Nowy
    Pomógł: 0

    Dziękuję! ;-)
    I myślę, że w dalszej części książki będzie tak samo.
    A nawiasem mówiąc doszedłem już do timerów i jak za pierwszym razem to otworzyłem to pomyślałem sobie WTF co to jest?
    A jak się to czyta po raz któryś to od razu to lepiej wygląda. ;-)

    _________________
    Pomagać i prosić o pomoc ;-)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sie 2015, o 20:15 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27363
    Lokalizacja: Szczecin
    Pomógł: 1043

    Gimbul napisał(a):
    A jak się to czyta po raz któryś to od razu to lepiej wygląda.

    Najważniejsze to jeden raz ale po kolei strona po stronie przeczytać cały BB - bo jak się zaczyna czytać na wyrywki - to później tak właśnie jest ;)

    powodzenia

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO