Benvenuto!
Accedi
o
registrati
.
16-12-2019, 09:25:49
Home
CDL Informatica
UniCT
CEA
Prof
Help
Search
Calendar
Login
Register
Forum Informatica Unict
»
LAUREA TRIENNALE (D.M. 270/04)
»
I anno
»
Programmazione 1, 9 CFU
(Moderators:
Gianluca Cincotti
,
fmessina
) »
Esercizi programmazione
Pages: [
1
]
2
Go Down
« precedente
successivo »
Print
Author
Topic: Esercizi programmazione (Read 3874 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
Vilelm
Matricola
Offline
Gender:
Posts: 13
Esercizi programmazione
«
on:
12-11-2010, 19:03:06 »
Salve a tutti, visto che per motivi di lavoro non posso seguire le lezioni, vorrei sapere se ci sono degli esercizi da svolgere lasciati dal professore proprio durante le lezioni. Se si qualcuno sarebbe così gentile da postarli qui? Grazie in anticipo
Logged
Luxandro
Apprendista Forumista
Offline
Posts: 307
Re:Esercizi programmazione
«
Reply #1 on:
12-11-2010, 19:33:16 »
Stampare a video il seguente output:
10987654321
12345678910
10987654321
12345678910
10987654321
12345678910
10987654321
Dato in input un intero n stampare a video il seguente output fino all'elemento n-esimo:
*
**
***
****
...
...
...
n*
Logged
"Quando non stai guardando è come un'onda. Quando guardi è come una particella!"
fabryxio
Apprendista Forumista
Offline
Gender:
Posts: 343
Chi l'ha duro....... l'ha duro!
Re:Esercizi programmazione
«
Reply #2 on:
12-11-2010, 23:36:11 »
Sul sito del prof cincotti ne trovi un sacco.. e se vai indietro nel forum ne trovi un sacco xD
Logged
http://clickis.altervista.org/
Stardust
Apprendista Forumista
Offline
Posts: 450
L'amore è attesa di una gioia che qnd arrva annoia
Re:Esercizi programmazione
«
Reply #3 on:
13-11-2010, 10:10:40 »
Quote from: Luxandro on 12-11-2010, 19:33:16
Dato in input un intero n stampare a video il seguente output fino all'elemento n-esimo:
*
**
***
****
...
...
...
n*
Questa cosa dei caratteri l' ho fatta in qst modo:
Code:
public static void main(String[]args){
int righe=5;
String s="";
while(righe!=0) {
s+='*';
righe--;
System.out.println(s);
}
Credo che sia sbagliato perchè la System è messa dentro il ciclo quindi stampa sempre i valori fino a qll finale. Se la System si mette fuori stampa solo ***** che sarebbe il valore qll reale ottenuto e nn la specie di mezza piramide ottenuta ciclando... quindi fondamentalmente l' esercizio nn so se giusto!Un PARERE DI qualche ESPERTO!
Logged
L'acqua ni vagna...u ventu n'asciuca e... u RUM e PERA n'aiutaaaa...
Luxandro
Apprendista Forumista
Offline
Posts: 307
Re:Esercizi programmazione
«
Reply #4 on:
13-11-2010, 11:58:00 »
Inizio col confessarti che sono tutto tranne che ESPERTO
Cmq a me sembra corretto con la print dentro il while...anche perchè la stringa la stampi con un "println". Ovvero ti stampa n'*' ad ogni "linea" e ad ogni ciclo va a capo; quindi è corretto che venga messo dentro il while.
Infatti, se metti la print fuori, accade che prima concatena le 5 stringhe e poi le stampa!
Io l'ho svolto esattamente come hai fatto tu! L'unica differenza è che ho inserito n da tastiera, ma la sostanza è quella
Un altro metodo, sicuramente meno elegante, è il seguente
Quote from: Luxandro on 13-11-2010, 11:58:00
import javax.swing.*;
public class Aster
{
public static void main(String[] args)
{
int n=Integer.parseInt(JOptionPane.showInputDialog("Inserire n"));
int i=1;
int k=1;
while(i<=n)
{
while(i>=k)
{
System.out.print("*");
k++;
}
k=1;
i++;
System.out.print("\n");
}
System.exit(0);
}
}
«
Last Edit: 13-11-2010, 12:18:55 by Luxandro
»
Logged
"Quando non stai guardando è come un'onda. Quando guardi è come una particella!"
Luxandro
Apprendista Forumista
Offline
Posts: 307
Re:Esercizi programmazione
«
Reply #5 on:
13-11-2010, 12:02:49 »
Ovviamente ci sarebbero tantissimi modi per ottenere lo stesso risultato
Logged
"Quando non stai guardando è come un'onda. Quando guardi è come una particella!"
Impact
Apprendista Forumista
Offline
Gender:
Posts: 107
Re:Esercizi programmazione
«
Reply #6 on:
15-11-2010, 15:09:31 »
Io l'ho fatto così:
Code:
public class Ex02
{
public static void main (String[] args)
{
int n = 10;
int i = 1;
int j;
while (i <= n)
{
j=1;
while (j<=i)
{
System.out.print("*");
j++;
}
System.out.print("\n");
i++;
}
}
}
Logged
Vilelm
Matricola
Offline
Gender:
Posts: 13
Re:Esercizi programmazione
«
Reply #7 on:
15-11-2010, 15:39:25 »
Ma come mai utilizzate solo il ciclo while e non ad esempio un for?
Logged
fabryxio
Apprendista Forumista
Offline
Gender:
Posts: 343
Chi l'ha duro....... l'ha duro!
Re:Esercizi programmazione
«
Reply #8 on:
15-11-2010, 15:47:13 »
Quote from: Vilelm on 15-11-2010, 15:39:25
Ma come mai utilizzate solo il ciclo while e non ad esempio un for?
quoto xD metà righe di comando con il for
basta porre:
Code:
for(int i=1;i<=n;i++)
e ovviamente:
Code:
str+='*';
System.out.println(str);
«
Last Edit: 15-11-2010, 16:01:12 by fabryxio
»
Logged
http://clickis.altervista.org/
Luxandro
Apprendista Forumista
Offline
Posts: 307
Re:Esercizi programmazione
«
Reply #9 on:
15-11-2010, 16:36:53 »
Perchè quando il prof. l'ha assegnato ha specificato che si potevano usare solo if e while.
E' ovvio che si potrebbe usare un for, e sicuramente sarebbe più efficiente, ma probabilmente il prof. vuole prima "spremerci" a fondo sugli if e while
Logged
"Quando non stai guardando è come un'onda. Quando guardi è come una particella!"
Vilelm
Matricola
Offline
Gender:
Posts: 13
Re:Esercizi programmazione
«
Reply #10 on:
15-11-2010, 17:13:59 »
Ah, allora ok
Sarà perchè così bisogna esplicitare i contatori, mentre il
for
fa tutto da se! A questo punto, io farei semplicemente così, come del resto ha già postato Stardust (Ziggy??):
Code:
import javax.swing.*;
public class Ex02
{
public static void main (String[]args)
{
int n = Integer.parseInt(JOptionPane.showInputDialog("n="));
int i=0;
String s="";
while (i<n)
{
s+="*";
System.out.println(s);
i++;
}
exit(0);
}
}
Logged
Vilelm
Matricola
Offline
Gender:
Posts: 13
Re:Esercizi programmazione
«
Reply #11 on:
15-11-2010, 17:41:16 »
Il primo invece l'ho fatto così, qualcuno ha qualche altra idea?
Code:
public class Ex01
{
public static void main(String[]args)
{
String s="", t="";
int j=10;
while (j>=1) //Crea la stringa decrescente
{
s+=j;
j--;
}
j++;
while (j<=10)
//Crea la stringa crescente
{
t+=j;
j++;
}
System.out.print(s+"\n"+t+"\n"+s+"\n"+t+"\n"+s+"\n"+t+"\n"+s);
}
}
Logged
Impact
Apprendista Forumista
Offline
Gender:
Posts: 107
Re:Esercizi programmazione
«
Reply #12 on:
15-11-2010, 23:47:09 »
Quote from: Luxandro on 15-11-2010, 16:36:53
Perchè quando il prof. l'ha assegnato ha specificato che si potevano usare solo if e while.
E' ovvio che si potrebbe usare un for, e sicuramente sarebbe più efficiente, ma probabilmente il prof. vuole prima "spremerci" a fondo sugli if e while
Concordo..
Logged
fabryxio
Apprendista Forumista
Offline
Gender:
Posts: 343
Chi l'ha duro....... l'ha duro!
Re:Esercizi programmazione
«
Reply #13 on:
16-11-2010, 00:49:54 »
ed è la stessa cosa..
prima del while metti i=1
nel while la condizione i<=n
l'istruzioni del while sono sempre le stesse , in + si deve mettere l'incremento di i con i++ =)
quando la condizione sarà falsa uscira dal while ...
p.s non vedo il motivo di mettere quell' exit(0) dopo il while :S
Logged
http://clickis.altervista.org/
fabryxio
Apprendista Forumista
Offline
Gender:
Posts: 343
Chi l'ha duro....... l'ha duro!
Re:Esercizi programmazione
«
Reply #14 on:
16-11-2010, 01:03:03 »
Quote from: Vilelm on 15-11-2010, 17:41:16
Il primo invece l'ho fatto così, qualcuno ha qualche altra idea?
Code:
public class Ex01
{
public static void main(String[]args)
{
String s="", t="";
int j=10;
while (j>=1) //Crea la stringa decrescente
{
s+=j;
j--;
}
j++;
while (j<=10)
//Crea la stringa crescente
{
t+=j;
j++;
}
System.out.print(s+"\n"+t+"\n"+s+"\n"+t+"\n"+s+"\n"+t+"\n"+s);
}
}
così è giusto.. =) evitando casini di valori di variabile dove magari uno si potrebbe confendere durante l'esame, potresti mettere una variabile j per crescente e una i per decrescente.. ma alla fine la cosa va ottimizzata.. è giusto cmq in tutti e due i modi sia con due variabili ke con una.. io avrei utilizzato i for xD
Logged
http://clickis.altervista.org/
Pages: [
1
]
2
Go Up
Print
« precedente
successivo »
Jump to:
Please select a destination:
-----------------------------
Area Ufficiale
-----------------------------
=> Annunci Ufficiali
=> Segreteria Didattica
=> Aiuto, proposte e commenti
=> Stages e progetti finali
=> C.O.F. Centro Orientamento e Formazione
=> Messaggi (d)agli amministratori del forum
-----------------------------
LAUREA TRIENNALE (D.M. 270/04)
-----------------------------
=> I anno
===> Architettura degli Elaboratori, 9 CFU
===> Elementi di Analisi Matematica, 12 CFU
===> Fondamenti di Informatica, 9 CFU
===> Matematica Discreta, 12 CFU
===> Programmazione 1, 9 CFU
===> Programmazione 2, 9 CFU
=> II anno
===> Algoritmi, 9 CFU
===> Basi di Dati, 9 CFU
===> Fisica, 9 CFU
===> Ingegneria del Software, 9 CFU
===> Inglese, 3 e 6 CFU
===> Interazione e Multimedia, 9 CFU
===> Sistemi Operativi, 9 CFU
=> III anno
===> Calcolo Numerico, 6 CFU
===> Formazione Numerica, 6 CFU
===> Introduzione all'Analisi dei Dati, 9 CFU
===> Metodi Matematici e Statistici, 6 CFU
===> Reti di Calcolatori, 9 CFU
===> Tecniche di Programmazione Concorrente e Distribuita, 9 CFU
===> Teoria dell'Informazione e Crittografia, 9 CFU
=> III anno - Materie a scelta (crediti liberi)
===> Computer Forensics, 6 CFU
===> Computer Graphics, 9 CFU
===> Digital Game Development, 6 CFU
===> GPGPU/CUDA, 6 CFU
===> Informatica Musicale, 6 CFU
===> LAP 1: programmazione C/C++ 6 CFU
===> LAP 2: Programmazione Android, 6 CFU
===> Sistemi Centrali, 6 CFU
===> Startup d'impresa e Modelli di Business, 6 CFU
===> Internet Security 9 CFU
===> Social Media Management, 6 CFU
=> Corsi disattivati - Vecchio curriculum
===> E-Commerce, 6 CFU
===> Legislazione Informatica, 6 CFU
===> Teoria della Computabilità, 9 CFU
-----------------------------
LAUREA MAGISTRALE
-----------------------------
=> I ANNO
===> Intelligenza Artificiale e Lab, 9 CFU
===> Algoritmi e Complessità, 9 CFU
===> Computer Vision, 9 CFU
===> Crittografia, 9 CFU
===> Fondamenti e Linguaggi per la Programmazione Distribuita
===> Inglese Scientifico, 3 CFU
===> Metodi analitici per l'informatica, 6 CFU
===> Metodi Matematici per l'Ottimizzazione (Corso Integrato), 12 CFU
===> Multimedia, 9 CFU
===> Sicurezza dei Sistemi Informatici 9 CFU
===> Computer Security, 9 CFU
=> II ANNO
===> Machine Learning 6 CFU
===> Teoria della Computabilità, 9 CFU
===> Analisi e Gestione dei Dati, 9 CFU
===> Compilatori, 9 CFU
===> Computazione Naturale e BioIspirata, 6 CFU
===> Introduzione alla Bioinformatica, 9 CFU
===> Linguaggi Formali e Applicazioni, 9 CFU
===> Logica Computazionale, 9 CFU
===> P2P & Wireless Networks, 9 CFU
===> Pattern Recognition, 9 CFU
===> Sistemi Distribuiti, 9 CFU
===> Sistemi dedicati e laboratorio, 9 CFU
===> Web Reasoning
=> Corsi disattivati - Vecchio curriculum
===> Fisica moderna per l'informatica, 6 CFU
===> Linguaggi di Programmazione, 9 CFU
===> Protocolli di Rete
===> Teoria dei Codici, 6 CFU
-----------------------------
Vecchi ordinamenti ad esaurimento
-----------------------------
=> Laurea Triennale (D.M. 509/00)
===> Algoritmi 1
===> Algoritmi 2
===> Basi Teoriche dell'Informatica
===> Economia Aziendale
===> Fisica 1, 6 CFU
===> Fisica 2, 6 CFU
===> Fisica 3
===> Formazione Analitica 1
===> Formazione Analitica 2
===> Formazione Discreta 1
===> Formazione Discreta 2
===> J2ME
===> Lab. Amministrazione di Sistemi
===> Laboratorio di Interazione
===> Modelli Matematici
===> Multimedia per Dispositivi Mobile
===> Progetto Software
===> Reti 1, 6 CFU
===> Sicurezza dei Sistemi Informatici 1
===> Sistemi Distribuiti 1
===> Teoria dei Grafi
===> Usabilità ed Estetica del Web
===> Web Programming
=> Laurea Specialistica (D.M. 509/00)
===> Algoritmi 3
===> Analisi Numerica
===> Complessità
===> Computabilità
===> Data analysis e management
===> Ingegneria del software 2
===> Linguaggi Formali
===> Metodi algoritmici per l'ottimizzazione combinatoria
===> Programmazione Funzionale
===> Reti di Calcolatori 2
===> Ricerca Operativa
===> Sistemi Distribuiti 2
-----------------------------
Dottorandi
-----------------------------
=> Wall
=> Events
-----------------------------
Area Studenti
-----------------------------
=> Agorà
=> L'angolo del tecnico
=> Il Mercatino degli studenti
=> Software
===> -vecchia catalogazione [sarà rimossa a breve]-
=====> Proprietario
=====> Free Software
=====> Open Source
===> Approfondimenti
===> News
===> Studio
===> Videogiochi
===> Networking e telecomunicazioni
===> Sviluppo
===> Ufficio e produttività
===> Sistemi Operativi
=====> Microsoft Windows
=====> GNU/Linux, Unix e BSD
=====> Mac OS X
=====> Windows Phone
=====> Android
=====> iOS
=====> Altri
===> Eventi, conferenze, concorsi
=> Microsoft Student Partner - Avvisi e informazioni
=> ERASMUS/borse di studio internazionali
Caricamento in corso...