domenica 14 dicembre 2014

Esercitazione su verifica del 01/12/2014

Svolgere l'esercitazione richiesta in verifica con C++ e con JAVA:
Esercizio 1:
 Realizza una classe 'contatore' che contiene una variabile intera 'valore' come attributo e due metodi, il primo è un costruttore senza parametri che inizializza 'valore' a 0 il secondo incrementa semplicemente 'valore ' di 1 tutte le volte che viene invocato.
Esegui il test del programma con un ciclo for

Esercizio 2:
Scrivi una classe D (data) i cui oggetti possano essere inizializzati come: d(22,08,01); implementare il costruttore, il metodo out() per la stampa a video, il metodo mod(gg,mm,aa) per consentirne la modifica e un metodo val() per consentire la validazione della data.
Esegui il test della classe costruendo un main che ne richiami i metodi precedentemente definiti.

Esercizio 1 in C++
# include <iostream>
using namespace std;

class Contatore
{
public:
Contatore();
int valore;
void incrementaValore();
};
Contatore::Contatore()
{
valore=0;
}
void Contatore::incrementaValore()
{
valore++;
}
main()
{
cout<<"Test della classe 'Contatore'";
Contatore obj1;
for (int i=0;i<5;i++)
{
obj1.incrementaValore();
cout<<endl<<obj1.valore;
}
}

Esercizio 2 in C++
# include <iostream>

using namespace std;

class D{
    public:
        D (int giorno, int mese, int anno);
        D ();
        void out();
        void mod(int gg, int mm, int aa);
        void val();
        int gclass;
        int mclass;
        int aclass;
};

D::D(int giorno, int mese, int anno)
    {
gclass=giorno;
mclass=mese;
aclass=anno;
};

D::D()
    {
        gclass=1;
        mclass=1;
        aclass=1;
    };

void D::out(){
cout<<endl<<"La data inserita e': "<<gclass<<"/"<<mclass<<"/"<<aclass;
};

void D::mod(int gg, int mm, int aa){
gclass=gg;
mclass=mm;
aclass=aa;
cout<<endl<<"La data e' stata modificata in: "<<gclass<<"/"<<mclass<<"/"<<aclass;
};

void D::val(){
int errore=0;
if((mclass<1)||(mclass>12))
{
errore++;
cout<<endl<<"Mese non valido";
}
else
{
if((gclass<1)||(gclass>31))
{
errore++;
cout<<endl<<"Giorno non valido";
}
else
{
if((gclass>28)&&(mclass==2))
{
errore++;
                        cout<<endl<<"Mese non valido, Febbraio max 28 gg";
}
else
{
if((gclass>30)&&((mclass==4)||(mclass==6)||(mclass==9)||(mclass==11)))
{
errore++;
cout<<endl<<"Giorno non valido, con mese inserito max 30 gg";
}
else
{
if((aclass>2100)||(aclass<1900))
{
errore++;
                                cout<<endl<<"Inserire un anno tra 1900 e 2100!";
}
}
}
}
}
if(errore==0)
cout<<endl<<"Data corretta!";
else
cout<<endl<<"Data NON valida!";
};

main()
{
    int gmain, mmain,amain;
//D obj1;
D obj1(10,01,1990);
cout<<endl<<"Test:";
    cout<<endl<<endl<<"\tVISUALIZZA DATA ";
        obj1.out();
    cout<<endl<<endl<<"\tMODIFICA DATA: \n";
cout<<"Inserisci il Giorno: ";
cin>>gmain;
cout<<"Inserisci il Mese: ";
cin>>mmain;
cout<<"Inserisci l'Anno: ";
cin>>amain;
obj1.mod(gmain, mmain, amain);
    cout<<endl<<endl<<"\tVALIDAZIONE DELLA DATA INSERITA: ";
obj1.val();
    cout<<endl;
}

Esercizio 1 in JAVA
public class contatore {

public int valore;

public contatore()
{
valore=0;
}

                void incrementaValore()
               {
               valore++;
               }
}


public class main {

public static void main(String[] args) {

System.out.println("Verifica del 01/12/2014 in JAVA!");
contatore obj1;
obj1=new contatore();
for (int i=0;i<5;i++)
{
obj1.incrementaValore();
System.out.println(+obj1.valore);
}
}

}

Esercizio 2 in JAVA
import java.util.*;

public class Data {
public int gclass,mclass,aclass;
public Data (int giorno, int mese, int anno){
gclass=giorno;
mclass=mese;
aclass=anno;
}
public void out(){
System.out.println("La data inserita e': "+gclass+"/"+mclass+"/"+aclass);
}

public void mod(int gg, int mm, int aa){
gclass=gg;
mclass=mm;
aclass=aa;
System.out.println("La data e' stata modificata in: "+gclass+"/"+mclass+"/"+aclass);
}
public void val(){
int errore=0,gval,mval,aval;
System.out.println("Inserisci la data da validare:\nGiorno: ");
Scanner input = new Scanner(System.in);
gval = input.nextInt();
System.out.println("Mese: ");
mval = input.nextInt();
System.out.println("Anno: ");
aval = input.nextInt();
if((mval<1)||(mval>12))
{
errore++;
System.out.println("Mese non valido");
}
else
{
if((gval<1)||(gval>31))
{
errore++;
System.out.println("Giorno non valido");
}
else
{
if((gval>28)&&(mval==2))
{
errore++;
System.out.println("Mese non valido, Febbraio max 28 gg");
}
else
{
if((gval>30)&&((mval==4)||(mval==6)||(mval==9)||(mval==11)))
{
errore++;
System.out.println("Giorno non valido, con mese inserito max 30 gg");
}
else
{
if((aval>2100)||(aval<1900))
{
errore++;
System.out.println("Inserire un anno tra 1900 e 2100!");
}
}
}
}
}
if(errore==0)
System.out.println("Data corretta!");
else
System.out.println("Data NON valida!");
}

}

import java.util.*;
public class main {

public static void main(String[] args) {
Scanner input = new Scanner(System.in);   //metodo per input da tastiera
int gmain, mmain,amain;
Data obj1;
obj1=new Data(10,01,1990);
System.out.println("Test:");
System.out.println("\tVISUALIZZA DATA ");
obj1.out();
System.out.println("\tMODIFICA DATA: ");
System.out.println("Inserisci il Giorno: ");
gmain = input.nextInt();
System.out.println("Inserisci il Mese: ");
mmain=input.nextInt();
System.out.println("Inserisci l'Anno: ");
amain=input.nextInt();
obj1.mod(gmain, mmain, amain);
System.out.println("\tVALIDAZIONE DELLA DATA INSERITA: ");
obj1.val();
}
}