/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package zhseg;
/**
*
* @author A Gonosz Hókuszpók
*/
public class ZHSEG {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
//Páros szám tömb feltöltése
// Lottószám generálása ez így most pont 6-os lottó
int [] lottotomb=lottogen(6,45);
// Kétjegyű páros számok tömb és kiírás
int [] paroszamok=parosszam(99,10);
tombkiir(paroszamok,"Kétjegyű páros számok csökkenőben");
// Szökőévek feltöltés és kiírás
int [] szokoevtomb=szokoevek(1800,1900);
tombkiir(szokoevtomb,"XIX század szökőévei");
// Páratlan számook kiírás csökkenő sorrendben
int [] paratlan=paratlan(999,100);
tombkiir(paratlan,"Háromjegyű páratlan számok csökkenőben");
System.out.println("Háromjegyű páratlan számok összege:"+paratlanosszeg(999,100));
// Prímszámok kiírása
int [] primszamok=primszamtomb(100,999);
tombkiir(primszamok,"Háromjegyű prím számok");
// Ha 6-os lottó kiírása
tombkiir(lottotomb,"6-os lottó számai");
// És van-e 18-as szám.
if(van18(paroszamok) | van18(szokoevtomb) | van18(primszamok) | van18(lottotomb) ){
System.out.println("Van 18");
} else {System.out.println("Nincs 18");}
}
static int [] lottogen (int szamdb,int vegszam)
{
int [] lottotomb = new int[szamdb];
int eddigiszamok=0;
int lottoszam=0;
// Generálunk egy lottótömböt, hogy függvényben
do {
// Most generálunk egy véletlenszámot 1 és a vége között
lottoszam=(int) ((Math.random()*vegszam)+1);
// Most egy jó kis függvényben lekérdezzük, hogy a kihúzott szám szerepel-e a tömbben?
if (! (vanmarilyen(lottoszam,lottotomb,eddigiszamok)))
{
// Ha nincs ilyen szám a tömbben akkor hozzáadjuk a tömhöz (a tömb sorszámozás 0-val kezdődik)
lottotomb[eddigiszamok]=lottoszam;
// Léptetjük a számlálót
eddigiszamok++;
}
// Addig meg a ciklus amíg ki nem húztuk az összes számot
} while (eddigiszamok!=6);
return lottotomb;
}
static boolean van18 (int [] tomb ){
boolean van=false;
for(int cikl=0;cikl<tomb.length;cikl++){
if(tomb[cikl]==18){
van=true;
}
}
return van;
}
static boolean vanmarilyen (int aktszam,int [] szamtomb,int tombmeret)
{
// Ezzel a ciklussal fogunk keresni
//beállítjuk a logikai változót arra hogy még NEM találtunk azonos elemet
boolean vanelem=false;
for (int cikl=0;cikl<=tombmeret;cikl++)
{
if (szamtomb[cikl]==aktszam)
{
// Ha mégis találtunk a tömbben elemet
vanelem=true;
}
}
return vanelem;
}
static int [] szokoevek (int tol, int ig)
{
int tmeret=0;
int tindex=0;
for(int cikl=tol;cikl<=ig;cikl++){
if(szokoev(cikl)){
tmeret++;
}
}
int [] tomb = new int[tmeret];
for(int cikl=tol;cikl<=ig;cikl++){
if(szokoev(cikl)){
tomb[tindex]=cikl;
tindex++;
}
}
return tomb;
}
static int [] parosszam (int tol, int ig)
{
int tmeret= (int) ((tol-ig)/2)+1;
int [] tomb = new int[tmeret];
int tindex=0;
for (int cikl=tol;cikl>=ig;cikl--){
if(cikl%2==0){
tomb[tindex]=cikl;
tindex++;
}
}
return tomb;
}
static int [] paratlan (int tol, int ig)
{
int tmeret= (int) ((tol-ig)/2)+1;
int [] tomb = new int[tmeret];
int tindex=0;
for (int cikl=tol;cikl>=ig;cikl--){
if(cikl%2!=0){
tomb[tindex]=cikl;
tindex++;
}
}
return tomb;
}
static long paratlanosszeg (int tol, int ig)
{
long parosszeg=0;
for (long cikl=tol;cikl>=ig;cikl--){
if(cikl%2!=0){
parosszeg = parosszeg + cikl;
}
}
return parosszeg;
}
static int [] primszamtomb (int tol, int ig)
{
int tmeret=0;
int tindex=0;
for(int cikl=tol;cikl<=ig;cikl++){
if(ezprim(cikl)){
tmeret++;
}
}
int [] tomb = new int[tmeret];
for(int cikl=tol;cikl<=ig;cikl++){
if(ezprim(cikl)){
tomb[tindex]=cikl;
tindex++;
}
}
return tomb;
}
static boolean szokoev(int szam)
{
boolean szokoeve=((szam % 100==0) && (szam % 400==0)) | ((szam % 100>0) && (szam % 4==0));
return szokoeve;
}
static boolean ezprim (int szam)
{
boolean prim=true;
// Csak eddig kell a kereső ciklusnak menni.
int felsoker = (int) Math.sqrt(szam);
for (int cikl=2;cikl<=felsoker ;cikl++){
if((szam % cikl) == 0 ){
prim=false;
}
}
return prim;
}
static void tombkiir (int [] tki,String szoveg)
{
System.out.println(szoveg);
int tmeret = tki.length;
for(int cikl=0;cikl<tmeret;cikl++){
System.out.print(tki[cikl]+" ");
}
System.out.println("");
}
Megosztás a facebookon