Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- void int_beolvas (int* x);
- int prim_e(int num);
- int ikerprim_e(int a, int b);
- int count(int n);
- int main() {
- // fuggvenyek hivasa, eredmeny kiirasa
- int szam;
- int_beolvas(&szam);
- printf("1..%d közt %d ikerprímszám van\n", szam, count(szam));
- return 0;
- }
- int prim_e(int num) {
- // egy szamrol annak megallapitasa, hogy primszam-e
- if (num == 1) {
- return 0;
- }
- for (int i = 2; i < num; i++) {
- if (num % i == 0) {
- return 0;
- }
- }
- return 1;
- }
- int ikerprim_e(int a, int b) {
- // egy szamparrol annak megallapitasa, hogy ikerprimek-e
- return fabs(a - b) == 2 && prim_e(a) && prim_e(b);
- }
- void int_beolvas(int* x) {
- // 1 db integer ertek ellenorzott beolvasasa
- while (1) {
- printf("szám: ");
- scanf("%d", x);
- if (*x > 1) {
- break;
- }
- printf("Invalid input\n");
- }
- }
- int count(int n) {
- // az osszegzes elvegzese
- int eredmeny = 0;
- for (int i = 2; i < n - 2; i++) {
- if (ikerprim_e(i, i + 2)) {
- eredmeny++;
- }
- }
- return eredmeny;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement