Kirjautuminen

Haku

Tehtävät

Kilpailu

Putka Open 2025
Alkaa syyskuussa!

Keskustelu: Yleinen keskustelu: Chatgpt:n käyttö ohjelmoinninapuna

uudempikoodaaja [03.08.2025 02:13:44]

#

Kuinka hyvä Chatgpt:n käyttö on ohjelmoinnissa tai ohjelmoinnin harjoittelemisessa? Ehdoton valtaosa netissä olevista materiaaleista on "valitettavasti" englanniksi (mikä on ihan oma vika kun en sitä osaa). Chatgpt:tä voi käyttää suomeksikin. Ja joo toki englantiakin pitää treenata. Tosin sekin vie aikaa niin kuin vie ohjelmoinnin harjoitteleminenkin.

Ja tänne en välttämättä enää kauheasti haluaisi lähettää kysymyksiä edes koodaamiseen liittyen, kun menneisyyteni tällä sivustolla on mikä on.

Antti Laaksonen [03.08.2025 09:40:54]

#

ChatGPT osaa todella hyvin ohjelmoinnin perusasiat, mutta toisaalta sitä kannattaa käyttää harkiten. Seuraava esimerkki tuo esille ongelman:

lainaus:

Kehote: Haluaisin oppia tekemään Pythonilla ohjelman, joka arpoo lottorivin. Rivissä tulisi olla 7 numeroa väliltä 1-40.

Vastaus: Tämä on mukava ja helppo projekti aloittaa Pythonin kanssa! Voimme luoda ohjelman, joka arpoo satunnaisen lottorivin 7 numeroa väliltä 1–40. Käytämme Pythonin sisäänrakennettua random-moduulia, joka on juuri tähän tarkoitukseen täydellinen.

Tässä on yksinkertainen esimerkki:

import random

def arvo_lottorivi():
    # Arvotaan 7 uniikkia numeroa väliltä 1-40
    lottorivi = random.sample(range(1, 41), 7)
    lottorivi.sort()  # Voimme lajitella numerot nousevaan järjestykseen
    return lottorivi

# Kutsutaan funktiota ja tulostetaan arvottu lottorivi
lottorivi = arvo_lottorivi()
print("Arvottu lottorivi:", lottorivi)

Ongelmana on, että ChatGPT antaa yleensä mihin tahansa ohjelmointiin liittyvään kehotteeseen vastauksena suoraan valmiin koodin. Tämä ei ole hyvä tapa oppia itsenäistä ohjelmointia ja ongelmanratkaisua.

jalski [03.08.2025 10:28:07]

#

Kokeilin piruuttani samaa tehtävää, mutta 8th ohjelmointikielellä:

ChatGPT sai aikaiseksi tälläisen Forth ohjelmointikieleltä näyttävän toteutuksen, mikä ei kuitenkaan edes toimisi silläkään ohjelmointikielellä:

; Lotto-rivin arpominen ohjelma (7 numeroa väliltä 1-40)

; Alustetaan satunnaislukugeneraattori
RANDOM 0 40

; Funktio, joka arpoo 7 uniikkia numeroa
: ARPOA-LOTTO
    7 0 DO
        RANDOM 1 40
        DUP
        SWAP
        0= IF DROP  THEN  ; Jos numero on jo arvottu, arvo uudestaan
        SWAP
        LOOP
;

; Käynnistetään lottoarvonta
ARPOA-LOTTO

Yksi toimiva tapa 8th ohjelmointikielellä voisi yksinkertaisesti olla vaikka:

' noop 1 40 a:generate ( a:shuffle 0 7 a:slice ) curry: arvo-lottorivi  \ -- a

: main
  arvo-lottorivi . cr ;

Antti Laaksonen [03.08.2025 12:57:23]

#

Onkohan Forth/8th yleisemminkin liian kova pala purtavaksi tekoälyille?

Vastaus

Muista lukea kirjoitusohjeet.
Tietoa sivustosta