#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>
#include "fuggvenyek.h" //Solution Explorer --> Source Files --> Jobbklikk --> Add --> New item --> fuggvenyek.h, strukturak.h
#include "strukturak.h"
int main(void)
{
köszönés();
lehessenek_ekezetek();
srand((unsigned int)time(NULL)); //Nézzük meg mi történik ha ez a sor a random feltöltő függvényen belül van
/*printf("Fejes csapszeg atmeroje: [mm] d= ");
double d;
scanf_s("%lf", &d);
puffer_torles();
printf("Adjon meg egy karaktert: ");
char karakter = getchar();
int karakterke = karakter;
printf("A megadott karakter %c volt. szamkent reprezentalva: %i\n", karakter, karakterke);*/
//Debug restart hotkey: Ctrl+Shift+F5
int tomb10[10];
int tomb25[25];
int_tomb_random_feltoltes(tomb10,10, -50, 50); //Feltöltögetések
int_tomb_random_feltoltes2(tomb25, 25, -50, 50);
int_tomb_kiiratas(tomb10, 10); //Kiiratások rendezetlenül
int_tomb_kiiratas(tomb25, 25);
int_tomb_rendezes(tomb10, 10); //Rendezgetések
int_tomb_rendezes(tomb25, 25);
int_tomb_kiiratas(tomb10, 10); //Rendezett tömbkiiratások
int_tomb_kiiratas(tomb25, 25);
//konzol_torles();
csere_a(tomb10[0], tomb10[9]); //Első, utolsó elemek kicserélése #1 nem működik
int_tomb_kiiratas(tomb10, 10); // #2 működik
//FONTOS: ameddig az előző példákban tomb10, tomb25 címeket jelentettek, pointerek voltak
csere_p(&tomb25[0], &tomb25[24]); //a tomb10[0] és tomb10[9] stb. indirekció kifejezések. ugyanaz, mintha azt írnám, hogy pl.
int_tomb_kiiratas(tomb25, 25); //int i=2 int*p = &i, ... int k = *p <-- *p indirekció, azaz p által mutatott ÉRTÉK! 'k' 2 lesz.
//int*q = p, ekkor q is i-re mutat!
printf("9 faktoriális: %llu\n", faktorialis_sima(9));
printf("9 faktoriális: %llu\n\n", faktorialis_rekurziv(9));
struct civil Benedek;
Benedek.igazolvanyszam = 9111337;
Benedek.eletkor = 20;
Benedek.karizma = 8.0;
Benedek.ero = 8.5;
Benedek.intelligencia = 9.5;
printf("Benedek igazolványszáma: %i\n\
\réletkora: %i\n\
\rkarizmája: %.1lf\n\
\rereje: %.1lf\n\
\rintelligenciája: %.1lf",
Benedek.igazolvanyszam,
Benedek.eletkor,
Benedek.karizma,
Benedek.ero,
Benedek.intelligencia);
printf("\n\n");
struct civil* Enese = malloc(sizeof(struct civil));
if (Enese == NULL) {
printf("Nem sikerült memóriát lefoglalni Enesének!\n");
exit(EXIT_FAILURE); //exit() bármilyen függvényszintből megszakítja a programot
}
Enese->igazolvanyszam = 6660777;
Enese->eletkor = 18;
Enese->karizma = 9.0;
Enese->ero = 4.5;
Enese->intelligencia = 8.5;
printf("Enese igazolványszáma: %i\n\
\réletkora: %i\n\
\rkarizmája: %.1lf\n\
\rereje: %.1lf\n\
\rintelligenciája: %.1lf\n\ ",
Enese->igazolvanyszam,
Enese->eletkor,
Enese->karizma,
Enese->ero,
Enese->intelligencia);
free(Enese);
return 0;
}