HTML

Programozó Páternoszter

Ez a Programozó Páternoszter (PP) blogja, a programozásról szól. Aktualitása, hogy a Debreceni Egyetem Informatikai Kara Magasszintű programozási nyelvek 1-2, C++ esattanulmányok, Java esettanulmányok című kurzusainak blogja is egyben.

A vadászat

A Debreceni Egyetem Programozói Évkönyve: az UDPROG projekt. A szakmai fórumunk a Facebook-en. Az új előadások a prezin.
A régi előadások:
Prog1:
1. C bevezetés
2. C tárgyalás
3. C befejezés
4. C a gyakorlatban
5. C++ bevezetés
6. C++ tárgyalás
7. C++ befejezés
8. C++ a gyakorlatban
9. Java platform bevezetés
10. Kvantuminformatikai alg. bev.
Prog2:
1. Java bevezetés
2. Java tárgyalás
3. Java befejezés
4. Java a gyakorlatban
5. Software Engineering bev.
6. Java EE bevezetés
7. AspectJ bevezetés
8. BPMN-BPEL SOA programozás
9. C++ haladó
10. Tensorflow

Kövess engem!

Friss topikok

Linkblog

Húzz egy kártyát, megmondom ki vagy

2011.02.09. 19:02 nb

Katalizálhatná az otthoni, önálló munkát, ha az első laborkártyákról írnánk egy posztot. Tegyük hát ezt! A kifejtés stílusa a várt válasz stílusát vetíti előre: nem boncolgatunk, hanem tömören adjuk a választ. Persze mivel a cél a tanulás, kommentekben lehet cincálni a kérdéseket. Sőt, ha valami nem világos, akkor ajánlott is! (Illetve néhány kártyának már korábban szenteltünk egy-egy posztot vagy poszt részletet.)

 

Mit ír ki kockás zárójelek között?
2 hatványokat.
Mit írna ki  printf ("[%d %d]\n", h, n); esetén?
2 hatványokat, a végén egy negatívval.

Tekerj a továbbra a többi kártyáért:

 

 

 

 

 

Mit csinál ez a program?
Végtelen ciklus.

 

 

 

 

 

 

 

Mit csinál ez a program?
Sztenderd bemenetét másolja a sztenderd kimenetére.

 

Mit csinál ez a program?
Kiír 10 db számot 1 és 10 között.
Mit csinál ez a program, ha többször futtatod egymás után?
Kiírja kétszer ugyanazt a 10 db számot 1 és 10 között.

 

 

 

 

 

 

 

 

 

 

 

Mit csinál ez a program? (input vége Ctrl+D)
Kiszámolja számok átlagát.

Egyik forrás az rszamok.c:

másik az atlag.c:

 

 

 

 

 

 

 


 

 

 

 

 

nbatfai@hallg:~/c$ gcc  atlag.c -o atlag
nbatfai@hallg:~/c$ gcc rszamok.c -o rszamok
nbatfai@hallg:~/c$ ./rszamok|./atlag
Mit ír ki és mit jelent az utolsó parancs?
Az rszamok kimenetét az atlag bemenetére vezetve kiírja a generált számok átlagát.

 

Mi a különbség a két ciklus között?
Semmi.

 

Mi a különbség a két feltétel között?
Semmi.

A deklarációs laborkártyákkal az előadás alapján nem lehet gond, csak egyet nézünk meg:

 

 


 

 

 

 

 

 

 

 

int a;     // a egy egész
int *b;     // b egy egészre mutató mutató
int c[5];     // c egészek tömbje
int *d[5];    // d egy mutató tömb, 5 darab egészre mutató mutató van benne i
nt e[3][3];     // e egy két dimenziós tömb
int *f();    // f függvény egészre mutató mutatót ad vissza
void*(*g)(void *);    // g egy void*-ot váró, void *-ot visszaadó függvényre mutató mutató

 

 

Mit ír ki ez a program?
aaaaa
bbbba

No persze az is lehet, hogy csak azt gondoltam, hogy ezek a helyesek... ha valamit rosszul gondoltam, kommenteljük meg!

6 komment

A bejegyzés trackback címe:

https://progpater.blog.hu/api/trackback/id/tr362649824

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

beigli767 2011.02.13. 17:27:12

Ezek a példák fognak szerepelni a jövőheti laborkártyákon?

beigli767 2011.02.13. 19:25:19

@nb: Köszönöm a választ! A második labor témát még nem is néztem eddig. :)

master994 2011.02.13. 21:51:13

#include <stdio.h>
int
main(void)
{
int c;
while((c=getchar())!=EOF)
putchar(c);
return 0;
}

Egyszerű formában nem megoldható így?

#include <stdio.h>
int
main(void)
{
char c;
while((scanf("%c",&c))!=EOF)
printf("%c",c);
return 0;
}

converter 2011.02.14. 22:14:06

@master994: úgy látom így is helyesen működik, véleményem szerint egyik sem bonyolultabb a másiknál :-)

nb · http://fersml.blog.hu 2011.02.18. 19:24:52

@converter: igen, a kipróbálás, tesztelés: azaz a konkrét tapasztalata ilyen esetekben irányadó (implementáció, fordító függő kérdésekben kevésbé)

De, hogy deduktívebb legyek, olvassátok el a K&R könyv "Csatlakozás a UNIX operációs rendszerhez" / "alacsony szintű bevitel és kivitel; read és write" részét, ahol getchar/putchar fgv.-eket implementálgatja.

Ám a legizgalmasabb, ha Ti magatok utána néztek a glibc kódjában: www.gnu.org/s/libc/

Forráskód böngészőből: sourceware.org/git/?p=glibc.git;a=blob;f=libio/getchar.c;h=fdc2ec3a87b51e55d555cb36e6ab7e3da2a98ce5;hb=c0fb8a563c1c49e5fbec9bc22deac618910a3ff4

Jól lehet látni, amit mondtam: egy szint a K&R könyv eleje, újabb a könyv 2. "Csatlakozás a UNIX operációs rendszerhez" része és van a valóság :-)
süti beállítások módosítása