avoin/avoin23
Huom! TÄMÄ ON AVOIMEN YLIOPISTON SIVU.
Et voi suorittaa kurssia, ellet ole ilmoittautunut täällä.
Ohjelmointi 1, avoin 2023, luento 18
- M: 25. Tietojen lukeminen ulkoisesta lähteestä
- MSDN: How to: Read From a Text File
- Isoksi.cs - esimerkki filtteristä, eli joka lukee syötettä ja tulostaa sitä jotenkin muutettuna
- TiedostoIsoksi.cs - esimerkki, joka lukee tiedoston ja tulostaa sen isoilla kirjaimilla
- Kaino.cs - esimerkki, joka muuttaa Kotus-sanaston sanat Hirsipuupeliä varten sopivaksi
- Syksyllä 2011 tehtiin ohjelma, jonka avulla voi korjata luentomonisteen rikkinäiset linkit
- KorjaaMoniste.cs - "valmiiksi" korjattu versio
- KorjaaMoniste.cs - luennon jälkeinen tilanne
- Syksyn 2011 luennon koodit versionhallinnassa
- Syksyn 2011 videot: Osa 1 MP4 alkuperäinen, MP4 kännykkäversio
- Syksyllä 2019 tehtiin ohjelma, jolla havainnolistetaan ajankäyttöä vs saatuja pisteitä
- Aika.cs - ajankäyttö vs demopisteet, esimerkki, jossa yhdistetään kahden erilaisen tiedoston sisältöä
- Syksyn 2019 videot: Osa 1 MP4 alkuperäinen
- Katsottiin kuvankäsittelyä (nykyisin videot demojen yhteydessä)
- Kuvankasittely
- Konvoluutio kuvan käsittelyyn - lataa ja aja
java -jar konvo.jar
- Kuva.cs - demo9 pohjatiedosto kuvan käsittelylle
- Palapeli.cs - demo9 pohjatiedosto palapelille
- Hirsiauta.cs - apuohjelma hirsipuun pelaamiseksi
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 18. luento videona: Osa 1 ja 2 MP4 alkuperäinen
- luentoseinä
Luentoesimerkkien haku versionhallinnasta
siirry hakemistoon johon haluat esimerkit
ekalla kertaa (tai jos olet ennen su 19.10 hakenut niin tuhoa vanha)
git clone https://gitlab.jyu.fi/tie/ohj1/avoin23/esimerkit.git .
jatkossa samassa hakemistossa
git pull
kopsi tuo hakemisto tai ainakin sinua kiinnostava alihakemisto toiseen paikkaan
periaatteessa tuonne syntyneen solutionin voi avata sellaisenaankin, mutta jos siihen tekee muutoksia, niin seuraavalla
pull
-komennolla tulee helposti konflikti
Mitä osataan?
Kurssin aikana sinun on tarkoitus oppia seuraavia asioita (osaamisen taso sovelletulla Bloomin asteikolla: 1=muistaa, 2=ymmärtää, 3=osaa soveltaa, 4=osaa analysoida, 5=osaa arvioida, 6=osaa luoda)
Siirrä alla osaamisesi (punainen pallukka) aina sitä vastaavalle kohdalle. Keltainen ruutu on tavoite johon tulisi päästä kurssin lopuksi. Ruksaa ensin muokkaa.
Please
Osattava asia | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
Rakenteisen ohjelmoinnin perusajatus | o | |||||
Algoritminen ajattelu | o | |||||
C#-kielen perusteet | o | |||||
Peräkkäisyys | o | |||||
Muuttujat | o | |||||
Aliohjelmat ja funktiot | o | |||||
Parametrin välitys | o | |||||
Ehtolauseet | o | |||||
Silmukat | o | |||||
Taulukot | o | |||||
Tiedostot ohjelmasta käytettynä | o | |||||
Olioiden käyttö | o | |||||
Yksikkötestit (TDD) | o | |||||
Debuggerin käyttö | o | |||||
Lukujärjestelmät, ASCII-koodi | o | |||||
Rekursio | o | |||||
Dokumentointi ja sen lukeminen | o |
Konvoluutio-demon malliohjelma
- Demo 9, B1-3 harjoittelu
- konvo.jar
- lataa ja aja
java -jar konvo.jar
- laita yläreunassa olevalle riville kuvan www-osoite ja lokaalilla levyllä olevan kuvan koko tiedostopolku
- valitse kuinka monta kertaa mikäkin maskimatriisin ajetaan
- paina
Aja muunnokset
- lataa ja aja
Filtteri
Filtteri on ohjelma, joka lukeee standardi syötettä (standard input, stdin
) ja tekee riveille jotakin ja tulostaa sen standarditulosvirtaan (standard out, stdout
).
Tyypillisesti filtteriohjelmia ajetaan komentoriviltä ja niitä sovelletaan johonkin tiedostoon. Esimerkiksi tiedosto voisi olla:
Esimerkiksi syöte voidaan antaa suuntaamalla tulos jostakin tiedostosta:
Edellä
dotnet-run
on erikseen TIMiin tehty komento, jotta käännetty ohjelma voidaan ajaa. Omassa koneessa vastaava tehtäisiin
dotnet run <kissa.txt
jos ohjelma on käännetty VisualStudiolla ja olaan projektin hakemistossa tai sitten ohjelma pitää kääntää komentoriviltä
Tällöin ajetaan:
./Isoksi.exe <kissa.txt
Ohjelmalle voidaan putkittaa toisen ohjelman tulos, esim grep
etsii tiedostosta rivit joilla toteutuu haluttu regular expresstion. Eli jos haluttaisiin muuttaa isoksi vain rivit joilla aluneprin esiintyy pienellä kirjoitettu kissa
, se voitaisiin tehdä:
Vastaavasti jos haluttaisiin näkyviin vain rivit, joissa muunnoksen jälkeen lukee KISSA
, voitaisiin muunnos ajaa ensin ja sitten tehdä grepillä etsiminen:
Hyvin yleistä on myös suunnata filtterin tulos tiedostoon:
Tiedoston käsittely tiedostona
- Sanalistan saa haettua: http://kaino.kotus.fi/sanat/nykysuomi/
Hirsiauta
- demo9 tehtävänä
- tarkoitus auttaa hirsipuun pelaamisessa
Demoihin käytettyjen aikojen laskeminen
- tämä vastaa hyvin ei-peli harjoitustyötä.
- vastaava: Työaikaraportti-tutorial
- Aika.cs - esimerkki, jossa yhdistetään kahden erilaisen tiedoston sisältöä
- Syksyn 2019 videot: Osa 1 MP4 alkuperäinen
- Exceliin:
- copy/paste syntynyt tiedosto
- lisätään rpist,raika (round)
- aluelle nimeksi data
- filtteriksi
- lisätään pivot data-alueesta
- riveiksi demo ja rpist
- sarkkeiksi raika
- sisällöksi count(raika)
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.