Rajzoljunk a konzol ablakba Windowson
Mi a legnagyobb szám, amivel még helyesen működik a múlt órán látott faktoriálisszámító program? Hogy lehet ezen változtatni?
Készíts szorzótáblát kiíró programot! A program kérje be a felhasználótól a szorzótábla méretét, majd írja ki a megadott méretű szorzótáblát! A kiírás táblázatos formában történjen, azaz így:
1 2 3 4 2 4 6 8 3 6 9 12 4 8 12 16
Tipp: Ha a számokat %d helyett pl. %3d-vel írjuk ki, akkor (legalább) 3 karakternyi helyre írja ki a program a számot. Ha pl. egyjegyű a szám, akkor elé két szóközt tesz.
Írj C programot, amely bekér a felhasználótól egy egész számot! Ha a szám 2 és 1000 között van (beleértve a határokat), írja ki az összes osztóját! Ha nincs benne, írjon ki hibaüzenetet!
Írj C programot, amely bekér két pozitív egész számot és kiírja a legnagyobb közös osztójukat!
Számítsd ki az 1/0!+1/1!+1/2!+1/3!+...+1/n! sor összegét a felhasználó által megadott n értékre! Mit kaptál?
Számítsd ki az 1/1+1/2+1/4+1/8+1/16+...+1/(2 az n-ediken) sor összegét a felhasználó által megadott n értékre! Mit kaptál?
Aki végzett, a https://infoc.eet.bme.hu/f02/#5 oldal feladatait oldogathatja.
| 1. feladat |
#include <stdio.h>
int main(){
double szam, i, fakt, max = 30;
szam = 6;
while(szam < max){
i = 1;
fakt = 1;
while( i <= szam ){
fakt = fakt * i;
i = i + 1;
}
printf("%g! = %e\n",szam,fakt);
szam = szam + 1;
}
return 0;
}
|
| 2. feladat |
#include <stdio.h>
int main(){
int sor = 1, oszlop = 1, mekkora;
printf("Mekkora? ");
scanf("%d", &mekkora);
while( sor <= mekkora ){
oszlop = 1;
while ( oszlop <= mekkora ){
printf("%10d ", sor*oszlop );
oszlop = oszlop + 1;
}
sor = sor + 1;
printf("\n");
}
return 0;
}
|
| 3. feladat |
#include <stdio.h>
int main(){
int szam,i;
printf("Egy szamot 2 es 1000 kozott: ");
scanf("%d",&szam);
if( szam >= 2 && szam <= 1000 ){
i = 1;
while( i <= szam ){
if( szam % i == 0 )
printf("%d, ", i);
i = i + 1;
}
}
else
printf("Nincs a megadott intervallumban.\n");
return 0;
}
|
| 4. feladat |
#include <stdio.h>
int main(){
int a,b,i;
printf("Ket poz egesz szamot: ");
scanf("%d%d",&a,&b);
if( a > b ) i = b;
else i = a;
/* while( !( a%i==0 && b%i==0 ) ){
i = i - 1;
}
*/
while( a%i!=0 || b%i!=0 ){
i = i - 1;
}
printf("LNKO = %d\n",i);
return 0;
}
|
| 5. feladat (két lehetséges megoldás) | |
#include <stdio.h>
int main(){
int n,i;
double osszeg = 1.0;
printf("Add meg n-et: ");
scanf("%d",&n);
i = 1;
while(i<=n){
// i! kiszámítámítása
double fakt = 1.0,j=1.0;
while(j<=i){
fakt = fakt * j;
j = j + 1.0;
}
// 1/i! hozzáadása az összeghez
osszeg = osszeg + 1.0 / fakt;
i = i + 1;
}
printf("%.15g\n",osszeg);
return 0;
} |
#include <stdio.h>
int main(){
int n,i;
double osszeg = 1.0, fakt = 1.0;
printf("Add meg n-et: ");
scanf("%d",&n);
i = 1;
while(i<=n){
// i! kiszámítámítása
fakt = fakt * i;
// 1/i! hozzáadása az összeghez
osszeg = osszeg + 1.0 / fakt;
i = i + 1;
}
printf("%.15g\n",osszeg);
return 0;
}
|
| 6. feladat |
#include <stdio.h>
int main(){
int n, i;
double osszeg = 0.0, szorzo = 1.0;
printf("Add meg n-et: ");
scanf("%d", &n);
i = 1;
while (i <= n){
osszeg = osszeg + 1.0 / szorzo;
szorzo = szorzo * 2;
i = i + 1;
}
printf("%.15g\n", osszeg);
return 0;
}
|