Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

program/schemat blokowy !

marysia92 27 Paź 2014 19:32 1245 10
  • #1 27 Paź 2014 19:32
    marysia92
    Poziom 2  

    Mam problem z takim zadaniem jestem poczatkujaca i już trochę nad tym posiedziałam i nic ;/ pomóżcie.

    Napisz schemat blokowy programu do wyznaczania sumy co drugiego elementu tablicy liczb calkowitych zaczynajac od pierwszego.

    0 10
  • #3 27 Paź 2014 19:52
    marysia92
    Poziom 2  

    Znaczy w kodzie może i bymdała rade ale nwm jak to przelożyć na bloki ;/

    0
  • #5 28 Paź 2014 19:28
    Defice
    Poziom 25  

    A ja sobie postanowiłem przypomnieć stare czasy, odpaliłem specjalistyczne narzędzie do rysowania algorytmów typu MS Paint i naskrobałem takie coś:

    program/schemat blokowy !

    A że jestem złośliwy, to nie jest to kompletne rozwiązanie problemu, a więc wędka nie ryba :) Jest kilka niejasności w opisie problemu, teraz inicjatywa po twojej stronie.

    0
  • #6 28 Paź 2014 20:35
    IXOF
    Poziom 18  

    hmmm, mam nadzieje, że to co powiem to nie ryba, ale czy na starcie suma nie powinna być tab[0], ponieważ koleżanka ma wyznaczyć sumę co drugiego wyrazu w tablicy zaczynając od 1, czyli nie tab[0] ?

    Oraz czy drugiego zapisu i:= i + 2 nie można wywalić a po warunku == true i dodaniu sumy wróć przed pierwsze i:= i + 2 ?

    0
  • #7 28 Paź 2014 20:48
    Defice
    Poziom 25  

    IXOF napisał:
    czy na starcie suma nie powinna być tab[0]


    No właśnie to nie jest jasne, czy pierwszy element oznacza 1 element tablicy, czy element o indexie 1.

    IXOF napisał:
    Oraz czy drugiego zapisu i:= i + 2 nie można wywalić a po warunku == true i dodaniu sumy wróć przed pierwsze i:= i + 2 ?

    Hm... tu już niekoniecznie, jeśli mamy w tablicy 2 elementy, to jeśli najpierw sprawdzimy warunek, będzie on prawdziwy. Potem przeskoczymy do elementu 3 i spróbujemy go dodać, czyli element z poza tablicy. Więc chyba powinno być tak.

    0
  • #8 28 Paź 2014 21:48
    IXOF
    Poziom 18  

    IXOF napisał:
    Oraz czy drugiego zapisu i:= i + 2 nie można wywalić a po warunku == true i dodaniu sumy wróć przed pierwsze i:= i + 2 ?

    Hm... tu już niekoniecznie, jeśli mamy w tablicy 2 elementy, to jeśli najpierw sprawdzimy warunek, będzie on prawdziwy. Potem przeskoczymy do elementu 3 i spróbujemy go dodać, czyli element z poza tablicy. Więc chyba powinno być tak.[/quote]


    Hmm, nie jestem pewny kolego czy się rozumiemy ;) Mi chodziło, żeby to zrobić tak :

    program/schemat blokowy !

    i na starcie wg mnie suma:= tab[0], ponieważ w zadaniu jasno jest zaznaczone, że ma zacząć od pierwszego elementu tablicy, czyli tablica[0] = pierwszy element tablicy.
    Aha, i chyba trzeba by zaznaczyć, że i na starcie i:= 0 .

    0
  • #9 29 Paź 2014 19:28
    Defice
    Poziom 25  

    Co do rozwiązania problemu to raczej "wsio rybka" chociaż nas uczyli, że pętla zaczyna się od warunku a nie od inkrementacji. Inkrementacje wykonuje się na końcu. A co do tego przypisania na początku, to nie dowiemy się nim autorka się nie wypowie.

    0
  • #10 29 Paź 2014 19:36
    Dżyszla
    Poziom 42  

    Defice napisał:
    Co do rozwiązania problemu to raczej "wsio rybka" chociaż nas uczyli, że pętla zaczyna się od warunku a nie od inkrementacji. Inkrementacje wykonuje się na końcu. A co do tego przypisania na początku, to nie dowiemy się nim autorka się nie wypowie.
    To nie jest prawda. Pętle repeat..until (do..while) właśnie bardzo często rozpoczną się od inkrementacji (a już na pewno wystąpi ona przed blokiem warunkowym) :)

    W sumie zrealizować można zadanie na kilka sposobów i każdy będzie semantycznie dobry, ale nie każdy identycznie optymalny pod względem ilości bloków.

    Natomiast autorka chyba nas mamiła oczekując na gotowca.

    0
  • #11 29 Paź 2014 19:41
    Defice
    Poziom 25  

    Złazimy na offtop, ale już skoro tak jest to opowiem coś, co nam na siłę wpajano zarówno w szkole jak i na studiach. A propos właśnie pętli, proponowanych przez Dżyszla.

    Zawsze uczono nas, aby nie próbować dostosowywać algorytmów do jakichś konkretnych elementów języka programowania. W tej liczbie i do konkretnej pętli, algorytm ma być uniwersalny. Sam często się z tym nie zgadzałem (podobnie było przy UML) ale chyba jest to słuszne.

    0