giovedì 5 novembre 2009

Banco.java

import java.util.Scanner;
public class Banco{
Giocatore giocatore;
int id;
String nome;
Mazzo mazzo=new Mazzo();
Mano manoBanco;
Scanner in=new Scanner(System.in);
public void creaGiocatore(){
System.out.println("Dammi il tuo nome");
String nomeGiocatore=in.next();
System.out.println("Dimmi il tuo badget");
int budget=in.nextInt();
giocatore=new Giocatore(1,nomeGiocatore,budget);
}
public Banco(int id, String nome){
this.id=id;
this.nome=nome;
}

}

Giocatore.java

public class Giocatore{
private Mano manoGiocatore=new Mano();
private int id;
private String nome;
private int budget;
private int resto;
private Scanner in=new Scanner(System.in);
public Giocatore(int id, String nome, int budget){
this.id=id;
this.nome=nome;
this.budget=budget;
resto=budget;
}
public int punta(){
System.out.println("Quanto vuoi puntare ?");
int puntata=in.nextInt();
if (puntata>resto){
System.out.println("la puntata eccede la tua disponibilità");
punta();
}
return puntata
}
public boolean stai(){
System.out.println("Stai o vuoi un'altra carta?, rispondi true altrimenti false");
boolean risposta=in.nextBoolean();
return risposta;
}
public int getId(){ return id;}
public int getBudget(){ return budget;}
public int getResto(){ return resto;}
public String getNome(){return nome;}
public void setResto(int r){ resto=r;}
}

mercoledì 4 novembre 2009

TestaMano.java

public class TestaMano{
public static void mano(String[] args){
Mano m1=new Mano();
Carta c1=new Carta(1);
m1.addCarta(c1);
Carta c2=new Carta(12);
Carta c3=new Carta(13);
m1.addCarta(c2);
m1.addCarta(c3);
m1.stampaMano();
}
}

Mano.java

public class Mano{
Carta[] mano=new Carta[11];
int contaCarte=0;
public void addCarta(Carta Carta){
mano[contaCarte]=carta;
contaCarte++;
}
public void stampaMano(){
int i=0;
while (mano[i]!=null){
System.out.println(mano[i].getNome()+""+mano[i].getSome());
i++;
}
}
}

giovedì 29 ottobre 2009

TestaMazzo.java

public class TestaMazzo{
public static void main(String[] args){
Mazzo m1=new Mazzo();
m1.stampaMazzo();
m1.mischiaMazzo();
m1.stampaMazzo();
}
}

Mazzo.java

import java.util.Random;
public class Mazzo{
Carta mazzo=new Carta[52];
Carta successiva=new Carta(1);
public void riordinaMazzo(){
for (int i=0; i<52; i++){
Carta c=new Carta[i];
mazzo[i]=c;
}
}
public Mazzo(){
riordinaMazzo();
}
public mischiaMazzo(){
Random r1=new Random();
//int nr=r1.nextInt(52);
for (int i=0; i<52; i++){
int n1=r1.nextInt(52);
int n2=r2.nextInt(52);
comodo=mazzo[n1];
mazzo[n1]=mazzo[n2];
mazzo[n2]=comodo;
}
}
public void stampaMazzo(){
for (int i=0; i<52; i++){
mazzo[i].ioSono();
}
}
}

TestaCarta.java

public class TestaCarta{
public static void main(String[] args){
int n=Integer.parseInt(args[0]);
Carta a1=new Carta(n);
a1.ioSono();
}
}

mercoledì 28 ottobre 2009

Carta.java

13 cuori (0 a 12)
13 quadri (13 a 25)
13 fiori (26 a 38)
13 picche (39 a 51)


45 deve essere il 6 di picche
n/13 45/13=3
semi[]{"cuori","quadri","fiori","picche"}
seme=semi[q]
valore=n%13+1
q=n/13=52/13=4





public class Carta{
private String seme; // "P" "Q" "C" "F"
private String nome; // "A 2----9 J Q K"
private int valore;
private semi[]{"cuori","quadri","fiori","picche"};
private nomi[]={"asse","2","3","4","5","6","7","8","9","10","Jack","Donna","Re"};
public Carta(int n){ // n è il numero univoco della carta da 1 a 52
int iseme=n/13;
seme=semi[iseme];
valore=n%13+1;
nome=nomi[valori-1];
}
public String getSeme(){
return seme;
}
public String getNome(){
return nome;
}
public int getValore(){
return valore;
}
public void ioSono{
System.out.println("Io sono la carta"+getNome()+" "+getSeme());
}
}

lunedì 26 ottobre 2009

Black Jack

1. Il banco prende un mazzo di carte
2. il banco mescola le carte
3. il banco chiede al giocatore di puntare
4. il giocatore punta 50 dollari
5. il banco distribuisce due carte al giocatore
6. il giocatore scopre le due carte
7. il banco distribuisce due carte a sé medesimo
8. il banco scopre una carta e lascia l’altra coperta
9. il giocatore conta il suo punteggio
10. il giocatore chiede un’altra carta
11. il banco distribuisce un’altra carta
12. il banco conta il punteggio in mano al giocatore
13. se il punteggio supera 21 il banco dichiara perdente il giocatore
14. il punteggio non supera 21 il banco chiede al giocatore se sta o se vuole un’altra carta
15. il giocatore sta
16. il banco conta il punteggio in mano al giocatore
17. il banco scopre la sua carta scoperta
18. il banco si distribuisce un’altra carta finchè supera quello del giocatore
19. se il banco supera il punteggio del giocatore ha vinto
20. se il banco sballa ha perso
21. se il punteggio del giocatore è uguale a quello del giocatore c’è la parità
22. se il giocatore ha in mano un asso e un dieci o una figura ha fatto il black jack e vince tre volte la somma puntata
23. se anche il banco ha fatto il black jack vince il banco

attori
oggetto

giovedì 15 ottobre 2009

Lezione 15/10/09 (2)

public class ProvaStudente{
public static void main(String[] args){
Studente studenti=new Studente[19];
Studente s1=new Studente("Di Bari","10-07-1992","IVAL");
Studente s2=new Studente("Scorteccia","25-01-1992","IVAL");
Studente s3=new Studente("Drago","10-05-1992","IVAL");
Studente s4=new Studente("Millucci","10-08-1992","IVAL");
studenti[0]=s1;
studenti[1]=s2;
studenti[2]=s3;
studenti[3]=s4;
for(int i=0; i studenti[i].studia();
}
}
}

Lezione 15/10/09

public class Studente{
private String nome;
private String dataNascita;
private String classe;
public Studente(String n, String dn, String c){
nome=n;
dataNascita=dn;
classe=c;
}
public void studia(){
System.out.println("Quanto ho studiato oggi!!");
}
public void sonoStanco(){
System.out.println("ho studiato troppo, sono stanco");
}
}

mercoledì 14 ottobre 2009

Gioco dell'oca

#include
#include
int i=0;
char tavolaGioco[]={
'-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-',
'|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',
'-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','|',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','|',' ','|',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','-','-','|',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','|',' ','|',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','-','-','|',
' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','|',' ','|',
'-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','|',
'|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',' ','|',
'-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-','-'};
void stampaBoard(){
int resto;
for(i=0;i<253;i++){
resto=i%23;
if (resto!=0){
printf("%c",tavolaGioco[i]);
}
else{
printf("\n%c",tavolaGioco[i]);
}
}
}
int lancioDado(){
double r;
double x;
int M=6;
int y;
int z;
r=((double)rand()/(double)(RAND_MAX+(double)(1)));
x=(r*M);
y=(int)x;
z=y+1;
return z;
}
void mossa(){
tavolaGioco[i]='x';
}
main(){
stampaBoard();
printf("\nlancia il dado");
int a;
srand((unsigned)time(NULL));
for(i=0;i<2;i++){
int n=lancioDado();
printf("\n avanza di:%d",n);
stampaBoard();
}
}

lezione2.java

public class Lezione2{
double[] numeri=new double[10];
public void carica(){
System.out.println("digita un numero reale");
int i=0;
while (in.hasNextDuoble()) {
n=in.nextDouble();
numeri[i]=n;
System.out.println("digita un numero reale");
}
}
public void stampa(){
for (int i=o; i<10; i++){
System.out.println(numeri[i]);
}
}
}

mercoledì 7 ottobre 2009

07/10/09

public class Radiosveglia{
String materiale;
String colore;
String tipo;
public void miAccendo(){
System.out.println("Mi Accendo,tic");
}
public void orario(){
System.out.println("Indico l'orario")
}
public void sveglia(){
System.out.println("Indico l'ora quando si attiva la sveglia");
}
public void radio(){
System.out.println("Scelgo la frequenza dove ascoltare la musica o le news,fsssss");
}
public void miSpengo(){
System.out.println("Mi Spengo,toc");
}
}

lunedì 5 ottobre 2009

Appunti 05/10/09

Java


Concetto di oggetto: una cosa concreta astratta che ha delle proprietà
rappresentate da varibili che ne definiscono i suoi attributi e un insieme di
metodi che definiscono il suo comportamento.
Include in se tutto quello che lo caratterizza.
Classe: insieme degli stessi oggetti dello stesso tipo.
Metodo Costruttore: è un metodo che si definisce e basta! lo manda in
esecuzione la funzione new.
Questo metodo è particolare perche comincia con la maiuscola e ha il nome
della classe.

Porta

public class Porta{
String materiale;
String colore;
String tipo;
public void miApro(){
System.out.println("Mi apro, iiiihhhhh");
}
public void miChiudo(){
System.out.println("Mi chiudo, booommm");
}
}

ProvaGatto

public class ProvaGatto{
public static void main(String[] args){
Gatto g1=new Gatto("Fufi","nero","siamese");
Gatto g2=new Gatto("Romeo","bianco","persiano");
Gatto g3=new Gatto("MIzi","grigio","africana");
g1.miagola();
g2.mangiaTopo();
g3.miagola();
}
}

Gatto

public class Gatto{
//la mia prima classe
String colore;
String nome;
String razza;
public Gatto(String nome, String colore, String razza){
this.colore=colore;
this.nome=nome;
this.razza=razza;
}
public void miagola(){
System.out.println("miao miao");
}
public void mangiaTopo(){
System.out.println("gnamm gnamm");
}
}

lunedì 21 settembre 2009

lezione 21/09/09

[verifica su variabili, if e else, iterazioni, funzioni]
La funzione è fatta da due parti: la dichiarazione e il corpo(insieme delle funzioni).
L'intestazione della funzione deve essere:
- La dichiarazione può essere pubblica(public) o privata(private).
- Il tipo della funzione.
- Il nome della funzione.
- Lista di parametri.
- Il corpo della funzione fra parentesi graffe.
Le variabili globali nascono e vivono con il programma.
Variabile locale e globale:
-Locale: quando è definita all'interno della funzione. E' utilizzabile soltanto per quella funzione.
-Globale: quando è definita all'esterno della funzione. Sono utilizzabili da tutto il programma.

public int somma(int a, int b){
int c;
c=a+b;
return c;
}
int s;
s= somma(10,20)

Il GIOCO DELL'OCA

Descrizione del gioco fatta da Calzola, Gagliardoni, Pignani.
Il gioco dell'oca è un gioco composto da un tabellone formato da un numero di tot. caselle(ARRAY).
Consiste nel lanciare dei dadi, (nel nostro caso tramite la funzione casuale) , attravesro il numero ottenuto si avanza di caselle.
Alcune caselle di arrivo però hanno degli effetti speciali come per esempio tornare all'inizio del gioco oppure rimanere fermi un numero preciso di turni.
Naturalmente vince chi arriva per primo all'ultima casella.

venerdì 29 maggio 2009

Porte Logiche

Le porte logiche sono dei semplici circuiti elettronici che attraverso i quali possiamo svolgere delle operazioni logiche.

AND

AND è una porta logica che riceve in ingresso due valori e restituisce 1 solo se tutti e due i valori di ingresso hanno valore 1.
Segue la tavola di verita':
INPUT OUTPUT
A B A \cdot B
0 0 0
0 1 0
1 0 0
1 1 1


OR
OR è una porta logica che riceve in ingresso 2 valori e restituisce 1 se uno od entrambi i valori di ingresso hanno valore 1.
Segue la tavola di verita':
INPUT OUTPUT
A B A + B
0 0 0
0 1 1
1 0 1
1 1 1


NOT

Porta logica che inverte il segnale in ingresso.
Questa porta logica ha un solo ingresso ed una uscita che sara' 1 se l'ingresso è 0 o 0 altrimenti.
Segue la tavola di verita':

INPUT OUTPUT
A NOT A
0 1
1 0

mercoledì 15 aprile 2009

lezione15-04-09

FILE *f1;
char[20] nome;
char[20] cognome;
int eta;
f1=fopen("studenti.txt","w");
fprintf("%s" "%s" "%d\n",nome.cognome,eta);
fclose(f1);
f1=fopen("studenti.txt","r");
fscanf("%s" "%s" "%d\n",nome.cognome,eta);
fclose(f1);
FILE*f2
f2=fopen(professori.txt","w");

martedì 14 aprile 2009

appunti strutture dati

cap 9-10 libro
STRUTTURE DATI
3 UNITA DIDATTICHE:
- i file(di testo);
- array di stringhe;
- algoritmi avanzati(ordinamento e ricerca).
---------------------------------------------------------------------
1° unità didattica{I FILE}

Istruzioni da usare per gestire i files:
1) Definizione di una variabileche punta ad un file
fisico su un disco:
-----------> FILE *f1 (f1=nome interno)
2) Associo il nome interno f1 ad un file fisico su disco;
e questa associazione può essere fatta in due modi:
a) in scrittura "w"
b) in lettura "r"
l'istruzione è: f1=fopen("voti.txt","w");
aprire un file significa associare questo file fisico al nome intero
che sto usando su questo programma.
3) Dopo aver aperto il file, cominciano a scrivere i dati usando
l'istruzione fprintf(...);
4) Per leggere i dati usiamo fscanf(...)
5) Chiusura del file fclose(f1);

esercizio 1

#include
FILE *f1;
FILE *f2;
int num;
void leggiScrivi(){
f1=fopen("esercizio1.txt","r");
f2=fopen("copia1.txt","w");
fscanf(f1,"%d\n",&num);
while(num!=999){
fprintf(f2,"%d\n",num);
fscanf(f1,"%d\n",&num);
}
fclose(f1);
fclose(f2);
}
main(){
leggiScrivi();
}

esercizio

#include
int numeri[10];
int numeri1[10];
int i;
FILE *f1;
void caricaNumeri(){
for (i=0; i<10; i++){
printf("digita dei nuneri interi\n");
scanf("%d\n",&numeri[i]);
}
}
void stampaNumeri(){
for (i=0; i<10; i++){
printf("&d\n",numeri[i]);
}
}
void scriviNumeri(){
f1=fopen("numeri.txt","w");
for (i=0; i<10; i++){
fprintf(f1,"%d\n",numeri[i]);
}
close(f1);
}
void leggiNumeri(){
f1=fopen("numeri.txt","r");
for (i=0; i<10; i++){
fscanf(f1,"%d",&numeri1[i]);
}
}
void stampaNumeri1(){
for (i=0; i<10; i++){
printf("%d\n",numeri[i]);
}
}
main(){
caricaNumeri();
stampaNumeri();
scriviNumeri();
}

giovedì 19 marzo 2009

lezione 18/03/09

int numero;
numero=17;
int i;
int numeri[10];
numeri=17;
numeri[3]=17;
i=3;
numeri[i]=numero;
anagrafica['nome']='tizio';
anagrafica['cognome']='caio';
anagrafica['email']='caio@libero.it';
numeri[0]=14;
numeri[1]=34;
numeri[2]=34;
numeri[3]=134;
numeri[4]=100;
numeri[5]=340;
numeri[6]=34;
n=numeri[6];
printf("%d",numeri[6]);
printf("%d",n);
for (i=0; i<10; i++){
numeri[i]=3;
}
for (i=0; i<10; i++){
printf("%d",numeri[i]);
}

giovedì 19 febbraio 2009

esercizio filetto 19/02/09

#include
int i=0;
char scacchiera[ ]={'-','-','-','-','-','-','-',
'|',' ','|',' ','|',' ','|',
'-','-','-','-','-','-','-',
'|',' ','|',' ','|',' ','|',
'-','-','-','-','-','-','-',
'|',' ','|',' ','|',' ','|',
'-','-','-','-','-','-','-'};
void stampaBoard(){
for (i=0; i<49; i++){
printf("%c",scacchiera[i]);
}
}
main(){
stampaBoard();
}

giovedì 12 febbraio 2009

lezione 12-02-09

#include
int i;
int numeri[10];
void digita(){
for (i=0; i<10; i++){
printf("\ndigita un numero intero");
scanf("%d\d",&numeri[i]);
}
}
void stampa(){
for (i=0; i<10; i++);
printf("%d\n", numeri[i]);
}
}
main(){
digita();
stampa();
}

mercoledì 11 febbraio 2009

esercizio 12-02-09

1) scrivere le seguenti funzioni:
a) la funzione elevaQuadrato che dato in input un numero intero n,
restituisce il suo quadrato.
b) la funzione isEven che, dato un intero n, restituisce
1 se n è un numero pari, e 0 se dispari.
c) la funzione isOdd che, dato un numero intero n, restituisce 1 se n è un
numero dispari, e 0 se pari.
d) la funzione power che, dato un numero double x ed un numero intero n,
restituisce x**n.
e) la funzione che, dati tre numeri interi che rappresentano i lati di triangolo,
restituisce 1 se il triangolo è rettangolo, altrimenti 0.
f) la funzione isPrime che, dato un numero intero n, restituisce 1 se il numero è primo,
altrimenti 0.

mercoledì 4 febbraio 2009

Lezione 04/02/09

#include
int moltiplica(int a,int b){
int i;
int somma;
for (i=0; i somma=somma+a;
}
return somma;
}
main(){
int m=moltiplica(3,4);
printf("il prodotto=%d",m);
}

giovedì 22 gennaio 2009

verifica 22/01/09

#include
int codstud;
int altezza;
int peso;
main () {
printf("incerisci codicestudente");
scanf("%d", &codstud);
printf("inserisci altezzastudente");
scanf("%d",&altezza);
printf("inserisci pesostudente");
scanf("%d", &peso);
while (codstud!=999) {
if ((altezza>180)&&(peso<50)) {
printf("codicestudente: %d",codstud);
printf("altezzastudente: %d", altezza);
printf("pesostudente: %d", peso);
printf("sottopeso");
}
if ((altezza<160)&&(peso>80)) {
printf("codicestudente: %d",codstud);
printf("altezzastudente: %d", altezza);
printf("pesostudente: %d", peso);
printf("sovrappeso");

}
printf("incerisci codicestudente");
scanf("%d", &codstud);
printf("inserisci altezzastudente");
scanf("%d",&altezza);
printf("inserisci pesostudente");
scanf("%d", &peso);

}
}

mercoledì 21 gennaio 2009

es 14 x casa

#include
int num;
int somma;
int q;
int i;
int quantnum;
int fine;
main(){
somma=0;
printf("\nInserire la quantita dei numeri da andare ad immettere successivamente per effettuare il calcolo.\n");
scanf("%d",&quantnum);
for(i=0;i printf("\nInserire un numero intero, il nummero verra sommato agli altri solo se paro. Per uscire digitare: 999\n");
scanf("%d",&num);
if(num==999){
break;
}
q=num/2;
if(q*2!=num){
printf("\nIl numero inserito non essendo pari non verra aggiunto alla somma.\n");
}
else{
somma=somma+num;
}
}
printf("\nLa somma dei numeri pari immessi e: %d\n",somma);
printf("\nScrivere un numero per chiudere il programma.\n");
scanf("%s",&fine);
}

es 17 x casa

#include
int min;
int max;
int mmin;
int mmax;
int mese;
int i;
int smin;
int smax;
int fine;
main(){
printf("\nInserire il numero dei giorni del mese\n");
scanf("%d",&mese);
for(i=0;i printf("\nScrivi temperatura minima del giorno\n");
scanf("%d",&min);
printf("\nScrivi temperatura massima del giorno\n");
scanf("%d",&max);
smin=smin+min;
smax=smax+max;
}
mmin=smin/mese;
mmax=smax/mese;
printf("\nMedia temperature minime: %d\n\nMedia temperature massime: %d\n\n",mmin,mmax);
printf("\nScrivere un numero per chiudere il programma.\n");
scanf("%s",&fine);
}

es 2 x casa

#include
#include
int xp;
int yp;
int xv;
int yv;
int dist;
int i;
main(){
printf("\nInserisci coordinate del punto di partenza, da cui vuoi calcolare la distanza.\n");
scanf("%d",&xp);
scanf("%d",&yp);
while(i!=999){
printf("\nInserisci coordinate del secondo punto. Per fare fine x=999\n")

scanf("%d",&xv);
scanf("%d",&yv);
dist=sqrt(pow(xp-xv,2.0)+pow(yp-yv,2.0));
prinf("La distanza fra i due punti e di: %d",dist);
}
}

es 1 x casa

#include
int pos;
int neg;
int num;
int tot;
int percpos;
int percneg;
int i;
int fine;
main(){
i=1;
while(i==1){
printf("\nInserisci un numero. Per terminare immetti: 999\n");
scanf("%d",&num);
if(num<0){
neg++;
}
else{
pos++;
}
if(num==999){
i=2;
}
}
pos=pos-1;
tot=neg+pos;
percpos=pos*100/tot;
percneg=neg*100/tot;
printf("\nTotale numeri scritti: %d\n\nNumeri positivi: %d\n\nNumeri negativi: %d\n\nPercentuale numeri positivi: %d%%\n\nPercentuale numeri negativi: %d%%\n\n",tot,pos,neg,percpos,percneg);
printf("\nScrivere un numero per chiudere il programma.\n");
scanf("%s",&fine);
}

mercoledì 14 gennaio 2009

esercizio x casa

#include
int giorno;
int temp;
void main(){
for(giorno=0;giorno<31;giorno++){
printf("inserire un giorno del mese di luglio");
scanf("%d";&giorno);
printf("inserire la temperatura di quel giorno");
scanf("%d";&temp);
if(temp>35){
printf("il giorno più caldo è stato:%d ",giorno);
printf("con la temperatura:%d \n",temp);
}
}
}

giovedì 8 gennaio 2009

Lezione 8 Gennaio 09

Dato un numero intero e positivo in ingresso, stampare tutte
le coppie di numeri interi il cui prodotto vale il numero dato


#include
int num;
int contatore;
int x;
int y;
main(){
printf("digita un numero intero e positivo");
scanf("%d",&num);
while (num<0){
printf("digita un numero intero e positivo");
scanf("%d",&num);
}
contatore=1;
do {
x=contatore;
y=num/x;
if (x*y==num){
printf("%d ",x);
printf("%d\n",y);
}
contatore=contatore+1;
}
while (contatore<=num);


}

mercoledì 7 gennaio 2009

programma in c che determina il massimo di numeri interi

#include int numero;int massimo; main(){ printf("digita un numero intero, 999 perfinire"); scanf("%d", &numero); massimo=numero; while (numero!=999){ if (numero>massimo){ massimo=numero; } printf("digita un numero intero, 999per finire"); scanf("%d",&numero); } printf("massimo numero; %d",massimo);}