Új hozzászólás Aktív témák
-
elistvan
őstag
Az alábbi programomat, hogyan tudnám lerövidíteni függvényekkel? Tudom a tartalmazza az, de hogyan tudom, a találatokat és tippeket fügvényekkel megoldani?
/*Kenorsolás program találatok számát irja ki, és a nyerőszámokat emelkedő sorrendben*/
#include <stdlib.h>
#include <time.h>
#include <stdio.h>int tartalmazza(int tomb[], int hossz, int szam){
for(int i=0;i<hossz;i++){
if(tomb == szam){
return 1;
}
}
return 0;
}int main(){
int tippeltszamok[10] = {0};for(int i=0;i<10;i++){
int talalat(i);
int szam;
printf("%d. szám: ", i+1);
scanf("%d",&szam);
if(szam >= 1 && szam <= 80 && !tartalmazza(tippeltszamok,10,szam)){
tippeltszamok(i) = szam;
}else{
printf("Már tippelt vagy nem 1-80 közötti szám\n");
i--;
}
}printf("A játékba küldött számok:\n");
for(int i=0;i<10;i++){
printf("%d ", tippeltszamok(i));
}int nyeroszamok[20] = {0};
for(int i=0;i<20;i++){
int num = (rand() % (80 - 1 + 1)) + 1;
if(num >= 1 && num <= 80 && !tartalmazza(nyeroszamok,20,num)){
nyeroszamok(i) = num;
}else{
i--;
}
}int talalat[10] = {0};
int tIndex = 0;
for(int i=0;i<10;i++){
for(int j=0;j<20;j++){
if(tippeltszamok(i) == nyeroszamok[j]){
talalat[tIndex++] = nyeroszamok[j];
}
}
}
int tmp;
int j =0;
int emelkedo[20] = {0};
for( int i=0; i<10; i++)
{
for( int j=0; j<20; j++)
{
if(nyeroszamok[j] > nyeroszamok(i)) /*Ha a nyerőszámok tömb 1 eleme nagyobb mint a második*/
{
tmp = nyeroszamok(i); /*Az első elemet kitesszük a tmp változóba*/
nyeroszamok(i) = nyeroszamok[j]; /*A második elem átkerül az első helyre a sorban*/
nyeroszamok[j] = tmp; /*a tmp-ben tárolt 2. elem, átkerül a második helyre.*/
}
}
}
printf("\nAz e heti nyerőszámok növekvő sorrendben:\n");
for(int i=0;i<20;i++)
{
emelkedo(i) = nyeroszamok(i);
printf("%d ", emelkedo(i));
}
printf("\n\n");
printf("\nA heti nyerőszámok pedig:\n");
{
for(int i=0;i<20;i++)
{
printf("%d ", nyeroszamok(i));
}printf("\n%d találat:\n", tIndex);
for(int i=0;i<tIndex;i++){
printf("%d ", talalat(i));
}
}
return 0;
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Filmvilág
- DUNE médialejátszók topicja
- Autós topik látogatók beszélgetős, offolós topikja
- Abarth, Alfa Romeo, Fiat, Lancia topik
- gban: Ingyen kellene, de tegnapra
- OLED TV topic
- QNAP hálózati adattárolók (NAS)
- Luck Dragon: Asszociációs játék. :)
- Milyen Android TV boxot vegyek?
- Projektor topic
- További aktív témák...
- HP EliteBook 840 G7 i5-10210U 16GB 512GB 1 év garancia
- Xiaomi 14T 512GB, Kártyafüggetlen, 1 Év Garanciával
- Kezdő Gamer PC-Számítógép! Csere-Beszámítás! I5 7500 / GTX 1050Ti / 16GB DDR4 / 128SSD+1TB HDD
- LG 55CS6 - 55" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox!
- 14" Dell Latitude laptopok: 5400, 5480, 5490, 7480, E6410, E6440, E5450 / SZÁMLA + GARANCIA
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest