ChattyG tager en første års uni C/C++ programmeringseksamen

ChattyG tager en første års uni C/C++ programmeringseksamen

ChattyG takes a first year uni C/C++ programming exam PlatoBlockchain Data Intelligence. Vertical Search. Ai.

ChatGPT blev sat på prøve via en række ensartede førsteårs C/C++ programmeringsopgaver, og det bestod – dog ikke med hæder.

Ifølge et kroatisk forskerhold, mens førsteårsstuderende kan kæmpe med nogle af opgaverne, resultaterne [PDF] viste, at ChatGPT nåede færdighedsmål, der varierede mellem gennemsnittet og det for erfarne programmører. Og naturligvis, som med alle universitetseksamener, kan resultaterne bestemmes af, hvordan spørgsmål er formuleret.

University North-besætningen designede et sæt programmeringsudfordringer på universitetsstuderende niveau, først skrevet på engelsk og senere, for at se, om nuancer på tværs af sprog ville påvirke resultaterne, kroatisk. De ville ikke bare se, hvordan ChatGPT koder, men også om det kunne tilpasse sig forskellige sprog.

Den første quiz fokuserede på en grundlæggende programmeringsopgave: at beregne den største fælles divisor (GCD) af to tal. I starten viste botten nogle begrænsninger i, hvordan den besluttede at tackle problemet, og forskerne sagde, at den manglede den finesse, der forventes af en erfaren programmør. Men som enhver studerende lærer den og gennem efterfølgende forsøg, især i den kroatiske version, demonstrerede den nogle forbedringer, hvilket viste bemærkelsesværdig tilpasningsevne.

For eksempel blev det i en bestemt opgave udfordret til at programmere en grundlæggende statistisk funktion i C++. Til at begynde med lavede den en forglemmelse ved at bruge en funktion, der ikke producerede den "korrigerede" standardafvigelse som krævet. Men da den samme opgave blev præsenteret på kroatisk, genkendte chatbotten ikke kun sin tidligere fejl, men udarbejdede en raffineret løsning.

Forskerne bemærker, at denne tilpasningsevne afspejler en freshmans rejse: starter med fejl, men viser en evne til at lære og forbedre deres færdigheder med gentagen praksis og feedback. Awww.

En anden opgave involverede et mere nuanceret problem: at identificere tal inden for et område baseret på specifikke delelighedsregler. Det var her, ChatGPTs akilleshæl blev tydelig. Uanset sprog - engelsk eller kroatisk - kæmpede ChattyG med negative tal. Hvert forsøg fra ChatGPT førte til lignende resultater, hvilket peger på et konsekvent problem i dets programmeringslogik for denne opgave.

Et bonusspørgsmål krævede præcision. ChatGPT var påkrævet for at lave et inputfilter, specifikt til et defineret område af decimaltal. AI's oprindelige løsning, når den blev præsenteret på engelsk, var på punkt, men de næste forsøg, især når opgaven blev givet på kroatisk, afslørede nogle uoverensstemmelser, og i nogle tilfælde brugte ChatGPT unødvendige programmeringskonstruktioner. Selvom disse ikke hindrede programmets funktionalitet, tydede det på en mangel på optimering. Det var, som om ChatGPT nogle gange tog den længere rute til en destination, selv når en genvej var tilgængelig.

Tingene blev mere indviklede med en opgave relateret til arrays. Her blev ChatGPT bedt om at gemme tal og derefter beregne visse statistikker som middelværdi, standardafvigelse og identificere minimums- og maksimumværdier. ChattyG's præstation på denne udfordring var særlig interessant. På tværs af forskellige test viste den forskellige strategier. Nogle gange løste det elegant problemet ved at tilbyde ligetil løsninger. I andre forsøg lænede det sig mod mere indviklede metoder, endda at samle flere operationer i én funktion.

Alt dette rejser et vigtigt spørgsmål: Vælger ChatGPT altid den bedste strategi, eller er det nogle gange standard for indlærte, men ineffektive metoder?

Den sidste forhindring for ChatGPT involverede grundlæggende tekstbehandling. Det fik til opgave at fjerne ekstra mellemrum fra brugerinput. I sin indledende engelske test var ChatGPTs løsning spot on. Den kroatiske test kastede dog en kurvekugle. I stedet for at overholde sin effektive enkelt-input-løsning, valgte AI af en eller anden grund en mere kompleks tilgang, der krævede flere input. Men da forskere genbesøgte denne udfordring på engelsk, syntes ChatGPT at have lært af dets tidligere fejltrin og vendte tilbage til den enklere metode.

Samlet set fandt forskerne, at svarene havde meget til fælles med dem fra menneskelige førsteårsprogrammeringsstuderende. Dets løsninger afspejlede ofte erfarne programmørers strategier, men som enhver studerende var ChatGPT ikke ufejlbarlig. Der var øjeblikke med glans, men også tilfælde, hvor det så ud til at misse målet helt.

Den virkelige takeaway her er dens menneskelige freshman-lignende tilpasningsevne: Det handlede ikke kun om at få den rigtige løsning; det handlede om at forfine, lære og gentage.

Så hvad er ChattyG's endelige karakter?

Fra forskerne:

“ChatGPT består eksamen med meget gode karakterer, der overgår de fleste af vores elever i kvaliteten af ​​løsninger. Desuden løser den hver opgave inden for 20 til 30 sekunder og viser den generelle evne til at tilpasse eller ændre sine løsninger efter yderligere krav. Men i nogle, ofte simple opgaver, viste den manglende evne til at forstå den logiske og matematiske essens af problemet, selv efter at være blevet bedt om dets fejl flere gange." ®

Tidsstempel:

Mere fra Registret