Dodaj do ulubionych

Pomóżcie zbudować prosty algorytm

IP: *.udn.pl 16.09.04, 17:41
Witam. Mam zadanko z informatyki, w zasadzie je zrobilem ale nie wiem czy
dobrze. Otóż muszę zbudować algorytm, który wyświetli najwiekszą z 3 liczb.
Jest to druga lekcja o algorytmach (zadanko jest dal chetnych) wiec znamy 3
bloki: wejscia wyjscia, wykonywania obliczen, operacji warunkowych.
Jakby ktos byl tak mily i mi chcial pomóc to prosze odp przyslac na maila
poniewaz tu sie nie da pisac w "kwadratach" i "rombach".
Mój mail to" tomen100(MAŁPA)wp.pl
Obserwuj wątek
    • Gość: kell Re: Pomóżcie zbudować prosty algorytm IP: *.udn.pl 16.09.04, 18:41
      cos w rodzaju:
      int a, b, c
      a?, b?, c?
      if a > b then
      if a > c then
      a!
      else if
      c!
      else
      if b > c then
      b!
      else if
      c!

      no to algorytm juz masz, teraz sobie zmien bloki jak potrzebujesz.
      ? jest operacja pobrania danych ! wyswietlenia
      • Gość: Beny :) IP: 195.127.197.* 16.09.04, 19:06
        I tak mamy idealne dwa przyklady na optymalizacje szybkosci - moje rozwiazanie
        (tylko dwa porownania) i optymalizacje zuzycia pamieci twoje (moje ma o jedna
        komorke pamieci wiecej). Oczywiscie czysto teoretycznie.
        • Gość: kell Re: :) IP: *.udn.pl 17.09.04, 08:54
          hehe:) dokladnie. nawet przy programowaniu strukturalnym byla mowa, ze nie warto
          uzywac kolejnych zmiennych, skoro te ktore sa nadaja sie znakomicie. mozna
          zreszta tez zamiast max uzyc mniejszej/wiekszej z a lub b, ale po co sobie
          komplikowac zycie przy tak prostej rzeczy;)
          • Gość: Beny Re: :) IP: 195.127.197.* 17.09.04, 09:04
            OK wedle zyczenia skoncze ta optymalizacje, dwa porownania ode mnie i 3 zmienne
            od ciebie. Przypominaja mi sie czasy pisania w assemblerze przy dostepnej pamiec
            2K ;)
            1. Wczytaj x
            2. Wczytaj y
            3. Wczytaj z
            4.
            5. Jesli y > x to krok 6, w przeciwnym wypadku 7.
            6. x := y
            7. Jesli z > x to krok 8, w przeciwnym wypadku 9.
            8. x := z;
            9. Wyprowadz "Najwieksza liczab to", x

            Zawsze jest miejsce na improvement ;)
    • Gość: Beny Blagam IP: 195.127.197.* 16.09.04, 18:43
      Nie kazdy musi byc (i moze byc, dzieki Bogu) informatykiem, ale takie zadanie
      nie ma nic wspolnego z informatyka - to mile cwiczenie z myslenia logicznego i
      dziwie ci sie ze nie chesz go zrobic.

      Pozatym mozna to takze zapisac tutaj, zamien sobie "kwadraciki" samemu, tyle
      chyba potrafisz. Algorytm - wskaz ktora z 3 wczytanych liczyb jest najwieksza:
      1. Wczytaj x
      2. Wczytaj y
      3. Wczytaj z
      4. max := x
      5. Jesli y > max to krok 6, w przeciwnym wypadku 7.
      6. max := y;
      7. Jesli z > max to krok 8, w przeciwnym wypadku 9.
      8. max := z;
      9. Wyprowadz "Najwieksza liczab to", max

      Takie trudne?
      • Gość: Tomek Dzieki IP: *.udn.pl 16.09.04, 20:44
        Beny, ja napisalem, ze ja to zrobilem! Tylko nie wiem czy dobrze. A jeśli
        chodzi o twój algorytm, to my w szole nie miliśmy nap "max". Za[isywaliśmy
        tylko np: a>b, c<a itp itd. Żadnych innych funkcji.
        Ale dzięki.
        pozdr
        • Gość: ja Re: Dzieki IP: *.daminet.pl 16.09.04, 21:02
          Max w tym przypadku nie jest funkcja tylko zmienna pomocnicza, w ktorej na
          koniec bedzie sie znajdowal wynik.
          W przyszlosci jak bedziecie szukac najwiekszej, najmniejszej wartosci w tablicy,
          to takie rozwiazanie bedzie stosowane

Nie masz jeszcze konta? Zarejestruj się


Nakarm Pajacyka