Zu Inhalt springen
Änderungen des Forenlayouts

Hervorgehobene Antworten

comment_2428281

Bei jeweils Prozessor-Vollast auf beiden Kernen habe ich also (max Durchsatz x gemeldeter Prozentsatz) übers Kabel wohl grob den vierfachen Durchsatz bekommen.

 

Das würde dem Verhältnis des Netto-Datendurchsatzes entsprechen, oder?

 

Stimmt - und deutet an, daß auch mein WLAN am oberen Ende der möglichen Datendurchsätze läuft (oder auch: schlimmer geht immer!).

  • 1 Monat später...
comment_2443532

Ergibt das Folgende für Euch irgendeinen Sinn:

 

a = 3

b = 5

b = a

 

... und: a = wieviel, b = wieviel am Ende?

 

[spoiler=Lösung]Korrekt ist, für eine Folge von Programmieranweisungen an einen Computer, a=3, b=3.

 

 

Es gibt Empirie, der zufolge eine korrekte Lösung dieser kleinen Aufgabe mit der Fähigkeit, Computer überhaupt zu programmieren (bzw. zumindest: Prüfungen in Informatik zu bestehen), korreliert: http://www.eis.mdx.ac.uk/research/PhDArea/saeed/ - allerdings nicht durchgehend. Aber immerhin. Wer (wie ein gerade verfügbares Testobjekt meiner näheren Verwandtschaft) antwortet "das ist sinnlos, hä???" wird nie ein Computerprogramm verstehen...

comment_2443534

Ja. Bin zwar kein Programmierer, und ohne Lösung weiß ich auch nicht, worauf sie hinaus wollen. Mit Lösung schon. Warum allerdings diese "Unlogik" irgendwas drüber aussagen soll, zu einem Programmierer zu taugen, weiß ich nicht. Halte ich jetzt für genauso Humbug wie alle Intelligenzschnelltests oder Persönlichkeitstests in der Sonntagsbeilage von $ZEITUNG

comment_2443543
Ergibt das Folgende für Euch irgendeinen Sinn:

 

a = 3

b = 5

b = a

 

... und: a = wieviel, b = wieviel am Ende?

 

[spoiler=Lösung]Korrekt ist, für eine Folge von Programmieranweisungen an einen Computer, a=3, b=3.

 

 

Es gibt Empirie, der zufolge eine korrekte Lösung dieser kleinen Aufgabe mit der Fähigkeit, Computer überhaupt zu programmieren (bzw. zumindest: Prüfungen in Informatik zu bestehen), korreliert: http://www.eis.mdx.ac.uk/research/PhDArea/saeed/ - allerdings nicht durchgehend. Aber immerhin. Wer (wie ein gerade verfügbares Testobjekt meiner näheren Verwandtschaft) antwortet "das ist sinnlos, hä???" wird nie ein Computerprogramm verstehen...

 

Ohne die Konventionen einer Programmiersprache ist die Lösung nicht richtig.

 

Z.B. Javascript:

1. Das "=" für "assign to variable" alias "Wertzuweisung" steht, und damit nicht genau dem klassischen "ist gleich" also Gleichheitszeichen entspricht.

(Mathematisch mag es üblich sein die Variable auf die linke Seite zu stellen, die Aussage, dass der Wert von zwei Ausdrücken gleich ist, bleibt auch in die andere Richtung richtig oder falsch. Kann beim Auflösen einer Gleichung passieren, auch wenn man wegen Schönheit zum Schluss dann "umdreht". Mathematisch wäre bei a=3, und b=5 die Aussage b=a schlicht falsch)

 

2. Der Operand "assign to variable" von rechts nach links gelesen wird (associativity right-to-left). Left-to-right wäre b->5, a->5. :)

Das könnte man aus den gegebenen Ausdrücken wie a=3 aber noch annehmen.

 

Macht nur so Sinn. Werden die Voraussetzungen in der Aufgabe genannt, schaffen es vermutlich einige mehr...

Wer die Aufgabe ohne löst hatte Glück, oder die Konventionen sind ihm bereits bekannt. Was darauf schließen lässt, dass

er bereits Kenntnisse hat.

 

[Edit: Wobei die Schreibweise der Lösung (a=3; b=3) dann innerhalb der Konvention wiederum nicht stimmt, weil "=" nun "assign to variable" bedeutet. :)]

Bearbeitet ( von JOC)

comment_2443613

Das Gleichheitszeichen '=' ist in der Informatik überladen. In einer Anweisung repräsentiert es eine Zuweisung, in einem Ausdruck den Vergleichsoperator.

Manche Programmiersprachen weichen dem aus, indem sie das Gleichheitszeichen nur für eine der beiden Bedeutungen benutzen und für die andere ein Kunstzeichen verwenden.

Wenn ich recht erinnere, wird in Pascal der Zuweisungsoperator mit ":=" bezeichnet. Sprachen aus der C-Familie verwenden dagegen '==' für den Gleichheitsoperator. Wobei manche dieser Sprachen auch noch verschiedene Varianten des Gleichheitsoperators kennen (in java gibt es neben dem '==' noch das 'equals' und in java script neben dem '==' noch das '===').

Die Programmiersprache Basic dagegen verwendet für beide Bedeutungen das Zeichen '='. Je nach Kontext wird es dann als Zuweisung oder als Vergleichsoperator behandelt.

 

Tatsächlich gibt es diese Überladung des Gleichheitszeichens schon in der Mathematik.

Schreibt ein Mathematiker z.B.:

Sind a und b die Seitenlängen eines rechtwinkligen Dreiecks und c die Länge seiner Hypothenuse, so gilt a*a + b*b = c*c, so wird das Gleichheitszeichen hier als Vergleichsoperator benutzt.

 

Schreibt er dagegen:

Seien x und y reelle Zahlen. Es sei z = x + iy, so führt er damit eine Abkürzung z für den komplizierteren Term x + iy ein. Hier wird das Gleichheitszeichen als eine Form des Zuweisungsoperators benutzt.

 

Eine andere Form des Zuweisungsoperators haben wir in der folgenden Formulierung:

Im rechtwinkligen Dreieck gilt a*a + b* b = c*c. Setzen wir in dieser Gleichung a=3 und b=4, so erhalten wir...

Hier dient die Zuweisung nicht der Abkürzung, sondern der Spezialisierung, mit dem ein allgemeiner Sachverhalt auf einen Spezialfall angewandt wird.

 

Da diese Überladung in der Mathematik ständig vorkommt, hat jemand, der damit Probleme hat, vermutlich keine große Afinität zur Mathematik. Denn sonst wäre sie ihm schon längst in Fleisch und Blut übergegangen.

Da mathematisches Talent und Talent für Programmierung korreliert sein dürften, ist es nicht erstaunlich, dass jemand, der mit den von MaiKai geschriebenen Zeilen Probleme hat, auch Probleme mit dem Programmieren hat.

comment_2443624
Ohne weitere Konvention gilt, wenn a=3 und b=5, dann ist a=b falsch.

Würdest du zu Recht keinem Fünftklässler durchgehen lassen.

 

Nun, dann hast du aber die dazugehörige Frage ausser Acht gelassen. Wieviel ist a und wieviel ist b am Ende. Die Frage ob die obigen Aussagen stimmen hat ja keiner gefragt.

 

Kommt mal wieder alles auf den Kontext an...den Kontext...den Kontext...den Kontext...:sleep:

comment_2443639

Einfach das erste Paper lesen, das auf o.g. Seite verlinkt wurde. Da steht alles wesentliche beschrieben, inkl. der Frage(n), die das eigentlich aufwirft.

comment_2443662
Kommt mal wieder alles auf den Kontext an...den Kontext...den Kontext...den Kontext...:sleep:

 

Ja, ich war etwas gemein. Die Forscher haben tatsächlich die Frage zu Beginn einer Lehrveranstaltung "Einführung in die Informatik" gestellt, so daß den Probanden dort der Zusammenhang mit Programmieranweisungen (der Zuweisungscharakter, um Stephans Beitrag aufzunehmen) klarer gewesen sein dürfte.

 

Es geht tatsächlich darum, ob jemand seine Gehirnwindungen darum herum wickeln kann, daß in der dritten Zeile die Variable "a" ein zweites mal einen Wert zugewiesen bekommt, und diesmal denjenigen, den in dem Moment die Variable "b" hat. Wie JOC andeutet, haben die Forscher eine Reihe von Denkmodellen vermutet, sowohl Richtung rechts als auch Richtung links usw. Ihre Vermutung war, wer überhaupt irgendein Denkmodell konsistent durchhält, wird auch programmieren lernen können. Wem das alles Banane ist, der wird sich damit schwer tun.

Wenn ich die letzte Veröffentlichung richtig überflogen habe, dann mußten sie aber feststellen, daß auch unter denjenigen, die im ersten Test wild zwischen Denkmodellen herum geirrt sind, sich nachher eine signifikante Anzahl fanden, die den Kurs bestanden. Damit war die Hoffnung gestorben, daß man so rechtzeitig (bevor sich alle miteinander ein Semester lang quälen) feststellen könnte, wer in welchem Höcker der kamelartigen (bimodalen) Häufigkeitsverteilung sitzt.

 

Wer übrigens die Website mit den Tests durchgeht, wird feststellen müssen, daß die dort gezeigten Lösungen z.T. falsch sind...

comment_2443863

Der Test fragt indirekt ab, ob jemand schon zumindest etwas programmieren kann. Derjenige hat dieses Prinzip nämlich schon einmal gesehen und kann die Frage damit auch leichter beantworten.

 

Der ganze Test sagt also mehr oder weniger, dass jemand der zu Beginn des Kurses "Einführung in die Informatik" schon programmieren kann, diesen Kurs mit höherer Wahrscheinlichkeit besteht. Eine wahrlich bahnbrechende Feststellung.

comment_2443864

Nicht ganz. Die "stabile Gruppe" besteht aus Leuten, die sich für eine Interpretation/Lesart/Gedankenmodell entscheiden, und diese(s) über den Test weitgehend durchhalten, unabhängig davon ob sie/es richtig ist. Die These wäre wohl, dass Leute, die formell "konsequent" sind, also einen systematischen Lösungsweg entwickeln und daran festhalten, sich eher zum Programmieren eignen. Später dann mit dem richtigen Lösungsweg.

 

War eigentlich der Anteil in dieser Gruppe mit der richtigen Lösung genannt?

Das wäre eine Gruppe in der man doch Leute mit Vorkenntnissen vermuten müsste.

Aber das sind Zahlenspiele.

 

[Einstein lag das rein formale ja auch nicht so, aber wahrscheinlich wäre er ein schlechter Programmierer geworden! :blush:]

Bearbeitet ( von JOC)

comment_2443912
Der Test fragt indirekt ab, ob jemand schon zumindest etwas programmieren kann. Derjenige hat dieses Prinzip nämlich schon einmal gesehen und kann die Frage damit auch leichter beantworten.

 

Der ganze Test sagt also mehr oder weniger, dass jemand der zu Beginn des Kurses "Einführung in die Informatik" schon programmieren kann, diesen Kurs mit höherer Wahrscheinlichkeit besteht. Eine wahrlich bahnbrechende Feststellung.

Die Behauptung von Dehnadi und Bornat ist (war), dass mit den Tests eine Programmierbegabung ermittelt werden könne, ohne dass die Testpersonen vorher mit dem Thema Programmierung in Kontakt getreten sind ("before they had received any programming teaching whatsoever" sowie "We believe that none had any previous contact with programming").

 

Allein aus methodischer Sicht weist die Untersuchung m.E. aber etliche Schwachstellen auf. Aus der Beobachtung irgendwelche Schlüsse zu ziehen, halte ich für sehr, sehr gewagt.

  • 1 Monat später...
  • 2 Wochen später...
comment_2455744

Wozu wurden gleich nochmal die Browserweichen erfunden?

 

Edit:

Und seit heute gibt es eine neue Variante:

 

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.89 Vivaldi/1.0.83.38 Safari/537.36

Bearbeitet ( von Sulvahir)

Erstelle ein Konto, um zu kommentieren

Kürzlich Online 0

  • Kein Mitglied betrachtet die Seite.

Wichtige Informationen

Wir setzen Cookies, um die Benutzung der Seite zu verbessern. Du kannst die zugehörigen Einstellungen jederzeit anpassen. Ansonsten akzeptiere bitte diese Nutzung.

Browser-Push-Nachrichten konfigurieren

Chrome (Android)
  1. Klicke das Schloss-Symbol neben der Adressleiste.
  2. Klicke Berechtigungen → Benachrichtigungen.
  3. Passe die Einstellungen nach deinen Wünschen an.
Chrome (Desktop)
  1. Klicke das Schloss-Symbol in der Adresszeile.
  2. Klicke Seiteneinstellungen.
  3. Finde Benachrichtigungen und passe sie nach deinen Wünschen an.