Wie implementiere ich folgenden Pseudocode in C?
2 Antworten
![](https://images.gutefrage.net/media/default/user/11_nmmslarge.png?v=1551279448000)
Fast so, wie er da steht... Nur andere Syntax.
Der Zuweisungspfeil wird zu einem Gleichheitszeichen, eine for-Schleife sieht z.B. so aus:
for(int j=1; j<length;j++)
Es gibt eine Besonderheit: Du musst die Länge des Arrays mit der Funktion übergeben. Aus dem Array selbst lässt sich dessen Länge nämlich nicht erkennen.
![](https://images.gutefrage.net/media/default/user/13_nmmslarge.png?v=1551279448000)
Die sind in den Header Dateien hinterlegt die in der Aufgabe mit dabei sind .
![](https://images.gutefrage.net/media/default/user/5_nmmslarge.png?v=1438863662000)
Indem Du die Anweisungen 1:1 in die C-Syntax überträgst. Das sollte bei diesem einfachen Beispiel trivial sein, weil es schon die Schleifen etc. enthält.
void CountSort(&Array A_in, &Array A_out){
for(int j=1;j<length(A_in);++j){
Usw. usf. Annahme: Es gibt einen Typ Array und eine Funktion length. Sonst sieht das ein wenig anders aus.
![](https://images.gutefrage.net/media/default/user/5_nmmslarge.png?v=1438863662000)
Ach Mist, ja, es sollte eigentlich * sein, damit es ein Call by Reference wird, beim Aufruf dann ggf. ein & (Adressoperator).
Danke für den Hinweis.
Aber ohne den 'Header' und was gegeben ist, kann man es ohnehin nicht präzisieren.
Das ist aber C++, oder? So weit ich weiß, gibt es in C keine Referenzen, nur Pointer.