Ez a dokumentum egy előző változata!
1.) Írjon egy C programot, amely segít eldönteni, hogy egy diák sikeres volt-e egy vizsgán! A programnak a következő funkciókat kell megvalósítania:
Tesztelje le néhány példával, hogy helyesen működik-e a vizsgaeredmények kiértékelése.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
#include <stdio.h> int main() { printf ( "Kerem a maximum pontot:" ); int maxPont; scanf ( "%d" , &maxPont); printf ( "Kerem az elert pontot:" ); int elertPont; scanf ( "%d" , &elertPont); if (elertPont > maxPont * 0.6) { printf ( "Sikeres" ); } else { printf ( "Sikertelen" ); } } |
2. Írjon egy C programot, ami egy évszámról megállapítja, hogy szökőév-e?
Szökőévek számolása kapcsán a következő szabályokat alkalmazzuk:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include <stdio.h> int main() { printf ( "Kerem az evet: " ); int ev; scanf ( "%d" , &ev); // Szökőév ellenőrzése if ((ev % 4 == 0 && ev % 100 != 0) || (ev % 400 == 0)) { printf ( "%d egy szokoev.\n" , ev); } else { printf ( "%d nem szokoev.\n" , ev); } return 0; } |
3. Írjon programot, ami eldönti, hogy a felhasználó által bevitt három szakasz hossza alapján, a szakaszok alkothatnak-e háromszöget? Akkor szerkeszthető háromszög, ha bármely két szakasz hossza nagyobb mint a harmadik.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
#include <stdio.h> int main() { // Bemenet: három szakasz hossza double a, b, c; printf ( "Kerem az elso szakasz hosszat: " ); scanf ( "%lf" , &a); printf ( "Kerem a masodik szakasz hosszat: " ); scanf ( "%lf" , &b); printf ( "Kerem a harmadik szakasz hosszat: " ); scanf ( "%lf" , &c); // Háromszög szerkeszthetőségének vizsgálata if (a + b > c && a + c > b && b + c > a) { printf ( "A haromszog szerkesztheto.\n" ); } else { printf ( "A haromszog nem szerkesztheto.\n" ); } return 0; } |
4. Írjunk C programot, amely egész számokat olvas be a billentyűzetről mindaddig, amíg 0-t nem gépelünk, és minden beolvasott számról eldönti, hogy páros-e vagy páratlan
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
#include <stdio.h> int main() { int szam; // Olvassuk be az első számot printf ( "Kerem a szamot (0 a kilepeshez): " ); scanf ( "%d" , &szam); while (szam != 0) { // Eldöntjük, hogy páros vagy páratlan if (szam % 2 == 0) { printf ( "%d paros.\n" , szam); } else { printf ( "%d paratlan.\n" , szam); } // Olvassuk be a következő számot printf ( "Kerem a kovetkezo szamot (0 a kilepeshez): " ); scanf ( "%d" , &szam); } printf ( "Program kilepett, mert 0-t irtal be.\n" ); return 0; } |
5. Írjunk másodfokú egyenlet valós gyökeit megoldó programot. Bemenetkét kérjük be a három együtthatót.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
#include <stdio.h> #include <math.h> int main() { double a, b, c; double discriminant, x1, x2; // Bemenet: a, b és c beolvasása printf ( "Kerem a masodfoku egyenlet egyutthatoit:\n" ); printf ( "a: " ); scanf ( "%lf" , &a); printf ( "b: " ); scanf ( "%lf" , &b); printf ( "c: " ); scanf ( "%lf" , &c); // Számláló (discriminant) kiszámítása discriminant = b * b - 4 * a * c; // Discriminant ellenőrzése if (discriminant > 0) { // Két valós gyök x1 = (-b + sqrt (discriminant)) / (2 * a); x2 = (-b - sqrt (discriminant)) / (2 * a); printf ( "A masodfoku egyenletnek ket valos gyoke van:\n" ); printf ( "x1 = %lf\n" , x1); printf ( "x2 = %lf\n" , x2); } else if (discriminant == 0) { // Egy valós gyök x1 = -b / (2 * a); printf ( "A masodfoku egyenletnek egy valos gyoke van:\n" ); printf ( "x1 = %lf\n" , x1); } else { // Nincsenek valós gyökök printf ( "Nincsenek valós gyokok" ); } return 0; } |
6. Írjunk c programot ami bekér a felhasználótól egy természetes számot, majd eldönti, hogy prímszám-e vagy sem. A prímszám ellenőrzésére egy egyszerű függvényt használ, ami a szám négyzetgyökéig megy és ellenőrzi, hogy osztható-e bármely számmal a [2, négyzetgyök(szám)] intervallumban .
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
#include <stdio.h> #include <math.h> // Függvény a prímszám ellenőrzésére int isPrime( int number) { if (number < 2) { return 0; // Nem prímszám, mert kisebb, mint 2 } int i; int sqrtNumber = sqrt (number); for (i = 2; i <= sqrtNumber; ++i) { if (number % i == 0) { return 0; // Nem prímszám, mert osztható más számmal is } } return 1; // Prímszám } int main() { int szam; // Olvassuk be a számot printf ( "Kerem a szamot: " ); scanf ( "%d" , &szam); // Ellenőrizzük, hogy a szám prímszám-e if (isPrime(szam)) { printf ( "%d primszam.\n" , szam); } else { printf ( "%d nem primszam.\n" , szam); } return 0; } |