Pseudokod: jasna definicja?

głosy
5

Poniższy kod jest przykładem tego, co myślę, że byłoby zakwalifikować jako Pseudokod, ponieważ nie wykonuje się w dowolnym języku, ale logika jest prawidłowa.

string checkRubric(gpa, major)
    bool brake = false
    num lastRange
    num rangeCounter
    string assignment = unassigned
    array bus['business']= array('person a'=>array(0, 2.9), 'person b'=>array(3, 4))
    array cis['computer science']= array('person c'=>array(0, 2.9), 'person d'=>array(3, 4))
    array lib['english']= array('person e'=>array(0, 4))
    array rubric = array(bus, cis, lib)

foreach (rubric as fieldAr)
    foreach (fieldAr as field => advisorAr)
        if (major == field)
            foreach (advisorAr as advisor => gpaRangeAr)
                    rangeCounter = 0
                foreach (gpaRangeAr as gpaValue)
                    if (rangeCounter < 1)
                        lastRange = gpaValue
                    else if (gpa >= lastRange && gpa <= gpaValue)
                        assignment = advisor
                        brake = true
                        break
                    endif
                    rangeCounter++
                endforeach
                if (brake == true)
                    break
                endif
            endforeach
            if (brake == true)
                break
            endif
        endif
    endforeach
    if (brake == true)
        break
    endif
endforeach
return assignment

Przez ostatnie kilka tygodni Próbowałem stworzyć jasną definicję tego, co faktycznie jest pseudokod. Czy w stosunku do programisty czy istnieje rzeczywista składnia clearcut? Mówię pseudokod jest jakiś kod, który nie wykonuje, jak o tobie? Dzięki (linki do tego tematu mile widziane)

Utwórz 22/03/2010 o 03:43
źródło użytkownik
W innych językach...                            


8 odpowiedzi

głosy
3

Bezwstydnie zgrane z Wikipedii :

Pseudokod jest kompaktowym i nieformalny opis wysokim poziomie algorytmu programowania komputerowego, który wykorzystuje konwencje strukturalne język programowania, ale jest przeznaczony dla ludzi czytania zamiast czytania maszynowego. Pseudokod zwykle pomija szczegóły, które nie są niezbędne dla ludzkiego zrozumienia algorytmu, takie jak deklaracje zmiennych i podprogramów, kod systemu specyficzne.

Jest dużo kodu, który nie wykonuje. To nie znaczy, że jest pseudokod. Twój „psuedocode” ma wiele dodatkowych rzeczy, które nie-programistów nie będzie zrozumieć. Zamiast pseudokod, Twój „psuedocode” język jest bardzo, bardzo blisko do rzeczywistej języku.

Odpowiedział 22/03/2010 o 03:51
źródło użytkownik

głosy
0

Moje dwa centy na ten temat:

Mówię pseudokod jest jakiś kod, który nie wykonuje, jak o tobie? Dzięki (linki do tego tematu mile widziane)

To nie jest to, co myślę, kiedy myśli o swojej definicji. Pseudokod są kroki program będzie podjąć, aby wykonać zadanie w sposób bardziej szczegółowy niż opisujący algorytm.

Jedną z rzeczy, w szczególności, że znajdę niezwykle ważny temat jak napisać Pseudokod jest to, że musi on być rozumiany przez wszystkich, aby dla każdej jednostki do „port” to do czyjegoś żądanym języku. Innymi słowy, to nie musi być język agnostykiem.

Podobnie jak konstruktywnej krytyki, nie uważam swój przykład jako Pseudokod z różnych powodów, ale specjalnie, bo używasz składnię i konwencje podobny konkretnego języka programowania. Mówię pseudocodes powinien być język programowania-agnostyk, aby być port kilku rzeczywistych języków programowania przez różnych ludzi.

EDIT: Prawdopodobnie jeszcze jedna zasada dodam do mojej definicji jest to, że ma ona przypominać ludzki język niż język programowania. Jak w, równa się zamiast ==, przypisać zamiast =. Powodem tego jest to, że, na przykład, operatory przypisania i równości są różne w różnych językach.

Odpowiedział 22/03/2010 o 03:51
źródło użytkownik

głosy
7

Nie ma ustalonej definicji Pseudokod. To każdy zapis, że można oczekiwać publiczność do zrozumienia, aby uzyskać punkt całej. Ważną ideą jest to, że jest on przeznaczony dla ludzi do czytania, a nie komputerów, więc nie muszą być precyzyjne. Można zawierać dane, które są istotne dla ekspozycji, a pomijać te, które nie są.

Odpowiedział 22/03/2010 o 03:52
źródło użytkownik

głosy
1

Pseudokod powinna teoretycznie być realizacja niezależna. Przedstawia logiczne kroki w prostym języku, co zrobić. Jest przeznaczony do interpretacji przez ludzi, a nie wykonanie maszyny.

Przykład OP jest nieco bliżej do rzeczywistego kodu niż Pseudokod. Na przykład, ++nie występuje we wszystkich językach. Może również mieć bardzo różne znaczenie w innych.

Odpowiedział 22/03/2010 o 03:52
źródło użytkownik

głosy
1

Cóż, jeśli nie kompilacji / link mojego kodu C ++, nie będzie wykonywać, więc nie sądzę „Kod, który nie wykonuje” jest akceptowalne definicja.

Podobnie języków skryptowych nie są wykonywane, są one często razy interpretowane.

Moja definicja pseudo kod byłoby:

„[Zwięzłe] Kod, który jest składnia agnostykiem, napisany przekazać funkcji, zachowań lub algorytm”.”

Odpowiedział 22/03/2010 o 03:53
źródło użytkownik

głosy
1

Pseudo-kod jest jakaś zwarta, czytelnej wyjaśnienie algorytmu lub programu. Ponieważ program nie jest czytelny dla mnie, chciałbym powiedzieć, że nie jest dość pseudo-code. Oto przykład pseudokodzie:

Def suma (x):
    wynik = 0
    Dla każdego wpisu w x:
        dodać bieżący wpis spowoduje
    wynik raport

Lub, w nieco innym stylu:

suma (x):
   Niech X będzie tablicą
   Niech wynik będzie liczbą całkowitą reprezentującą wynik, początkowo 0

   dla elementu x:
       wynik + = pozycja

   return result

Można używać elementów konkretnej składni (i, w rzeczywistości, mój pseudo-kod zazwyczaj wyglądają trochę jak Python), ale to musi być zrozumiałe dla szerokiej publiczności i nie powinien być zasłonięty przez składni. Na przykład, używam „+ =”, ale to dlatego, że jest bardzo kompaktowy i wygodny, nie dlatego, że jest to konieczne. Jeśli znalazłeś „endforeach” pomocny i wygodny w swojej ekspozycji, to byłoby w porządku; Jednak jestem zdania, że ​​takie rzeczy nie należą do pseudo-kodu, jak to wygląda bardziej stinted niż pomocne lub wyjaśnień.

Odpowiedział 22/03/2010 o 04:01
źródło użytkownik

głosy
0

Pseudokod jest to co piszesz na tablicy, jeśli chcesz dostać swoje pomysły w poprzek szybko i wyraźnie. W praktyce, dla mnie to dużo jak bez typu języka skryptowego, ale ze znacznie luźniejsze wymagań składniowych. Dla mnie to wygląda podobnie jak C, bo, szczerze mówiąc, większość programistów grok jakiś język, który jest wariantem na składni C i tak intuicja jest łatwiejsze dla większej liczby osób (kiedyś wyglądać jak Pascal, ale to dlatego, że był to jeden z pierwszych języków I nauczyłem się w szkole).

Odpowiedział 22/03/2010 o 04:03
źródło użytkownik

głosy
1

Zarys programu, napisany w formie, która może być łatwo przekształcony prawdziwych stwierdzeń programowania.

Pseudokod nie mogą być zestawiane ani stracony i nie ma żadnych zasad prawdziwe formatowania lub składni. Jest to po prostu jeden krok - ważny - w produkcji ostatecznej kod. Korzyść z Pseudokod jest to, że umożliwia programiście skoncentrować się na algorytmach bez martwienia się o wszystkich szczegółach składniowych konkretnego języka programowania.

Odpowiedział 29/05/2012 o 06:42
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more