Tags:
tag this topic
create new tag
view all tags
---++ Domande (e risposte) su Homework2 * Inserite le vostre domande usando la form [[#form][in fondo alla pagina]] ---- ---+++ Senza titolo? A lezione non è stato menzionato questo problema... vuol dire che i problemi saranno assegnati esclusivamente attraverso Twiki ed a lezione non se ne parlerà??? -- Comment added by Users.AndreaCosentino on 18 Nov 2004 ---- ---++++ Senza titolo? Da quel che sò se ne discuterà domani (Venerdì 18 Novembre 2004). Ciao :) -- Comment added by Users.MarioBove on 18 Nov 2004 ---- ---+++ sqrt() Si può usare la funzione sqrt() della libreria math.h?? -- Comment added by Users.AlessandroSabellico on 18 Nov 2004 ---- ---+++ Chiarificazioni Io l'ho fatto, spero solo di non aver commesso errori grossolani. Ho provato a fare da me il test automatico e pare non ci siano problemi. Caso 0: Il programma termina Caso x < 0: Loop finche non viene inserito un numero positivo. Caso 1 <= x => 10000: Stampare 0 se il num non è primo e 1 se lo è, in ogni caso chiedere di nuovo l'input. Caso x > 10000: Chiedere di nuovo l'input. Ho capito qualcosa male per caso? -- Comment added by Users.RiccardoProietti on 18 Nov 2004 ---- ---+++ Altre info Ah chiaramente se x < 0, output "-1" e input nuovamente. Nella pagina principale c'è una nota bianca: "IMPORTANTE non far produrre al programma altri output oltre a quelli richiesti. inserire l'istruzione: " Quale istruzione ? Non c'è nulla... -- Comment added by Users.RiccardoProietti on 18 Nov 2004 ---- ---+++ Output Anche io come RiccardoProietti ho fatto il programma, solamente che dal testo dell'esercizio non spiega come stampare tutto l'output, nel senso: Come stampo tutta la tabella di numeri primi da 1 a 10000 ? Và bene se lascio uno spazio tra l'uno e l'altro o vuole un \n per ogni numero? In oltre quando richiedo in input un intero il numero da stampare (1,0 o -1) lo vuole sulla riga immediatamente sotto, affianco al numero di input o ...? Attendo con ansia una risposta in modo da poter inviare l'esercizio. Grazie, saluti. -- Comment added by Users.MarioBove on 19 Nov 2004 ---- ---+++ x MarioBove Non devi stampare tutta la tabella... ti serve solo per il confronto con l'input che dai... A me elimina il primo multiplo del numero ma i successivi non riesco a renderli 0. Mi manca qualcosa, ma non riesco a capire che cosa... -- Comment added by Users.AndreaCosentino on 19 Nov 2004 ---- ---+++ sii ce l'ho fatta -- Comment added by Users.GianlorenzoBruno on 19 Nov 2004 ---- ---+++ x>10000 E se il numero da controllare è maggiore di 10000, come deve comportarsi il programma? -- Comment added by Users.StefanoConte on 19 Nov 2004 ---- ---+++ Senza titolo? Come mai alcuni programmi scritti con una compilatore per windows nella compilazione con linux danno errori sulle variabili???? -- Comment added by Users.AlessioSalerno on 19 Nov 2004 ---- ---+++ x AndreaCosentino Oggi a lezione il professore ha detto che si deve stampare tutta la tabella dei numeri primi e poi richiedere un input ed eseguire quei controlli se è 0 stop se è compreso tra 1 e 10000 verificare se è numero primo se è maggiore di 10000 non si fà nulla se numero negativo si stampa -1 . Per il tuo problema che riesci ad azzerare solo il primo numero è "credo" perchè devi fare un ciclo! :) Se hai bisogno cerco di darti una mano... Ciao -- Comment added by Users.MarioBove on 19 Nov 2004 ---- ---++++ X MarioBove Che vuol dire che se il numero è maggiore di 10000 non si fa nulla??? Come si deve comportare il programma se il numero è piu' grande di 10000,mica posso dire al programma "non si fa nulla"!!! -- Comment added by Users.StefanoConte on 19 Nov 2004 ---- ---+++ impostare tutto l'array ad 1 L'unico modo x impostare tutti gli elementi di un array di int ad 1 è con un ciclo for vero? -- Comment added by Users.AlessandroSabellico on 19 Nov 2004 ---- ---++++ X AlessioSalerno E' ovvio che un programma scritto in ambiente Windows non compila in ambiente Unix e dipende dal fatto che la formattazione di un file di testo scritto sotto windows è diversa da quella dello stesso testo scritto sotto unix. L'unica cosa che puoi fare è riscrivere il programma :) -- Comment added by Users.StefanoConte on 19 Nov 2004 ---- ---+++ re: caso x > 10000 semplicemente il caso di x > 10000 nn sarà preso in considerazione dai test automatici, in altre parole nn verrà effettuata alcuna prova con x > 10000.. Ciao -- Comment added by Users.AlessandroSabellico on 19 Nov 2004 ---- ---+++++ caso x>10000 ok grazie mille!!! ;) -- Comment added by Users.StefanoConte on 19 Nov 2004 ---- ---+++ x StefanoConte, "formattazione" (questa sconosciuta...) Ma che stai a di'? O_o<br>cioè, Linux non supporta lo standard ANSI??? -- Comment added by Users.AlbertoLaRocca on 19 Nov 2004 ---- ---+++ Un po' di chiarezza sull'output Cito dal testo dell'homework: se l'intero è compreso tra 1 e 10000, stampa 1 se il numero è primo, 0 altrimenti e poi aspetta in input un nuovo numero Interpreto questa riga come: a. In entrambi i casi accetto un nuovo input b. Accetto un nuovo input solo se 0? (il programma esce ad se il numero è primo) -- Comment added by Users.DanieleBernardi on 19 Nov 2004 ---- ---++++ Un po' di chiarezza sull'output Da quel che ho capito io basta che crei un ciclo che richieda un input e si fermi solo quando il numero inserito è 0.<br> Se è compreso tra 1 e 10000 stampa 1 se è primo 0 se non lo è, se è negativo stampa -1 se è maggiore di 10000 non fà altro che attendere un altro input finchè l'input inserito non rientri in una delle condizioni elencate prima.<br> Se così non fosse spero che un professore ci illumini!<br> Anche perchè non è chiara questa cosa della stampa dei numeri primi da 1 a 10000, visto che oggi a lezione il professore aveva detto di fare prima la stampa e poi la richiesta di un input....<br> Che tocca fare?<br> Grazie, ciao! -- Comment added by Users.MarioBove on 19 Nov 2004 ---- ---+++ x StefanoConte Ma sei sicuro di ciò che stai dicendo? ;)<br> Prova a scrivere un file con blocconote in windows ed ad aprirlo con un editor di testo di linux....<br> La tua affermazione sarebbe vera se si utilizzasse un programma come word che utilizza dei file .doc e non .txt questi hanno un'altra "formattazione" e ovviamente non vengono letti correttamente da texteditor semplici, ma se scrivi un qualsiasi testo con blocconote (windows) deve essere per forza letto da qualsiasi texteditor perchè utilizza lo stardard ASCII!<br> <br> Ciao :) -- Comment added by Users.MarioBove on 20 Nov 2004 ---- ---++++ Un po' di chiarezza sull'output Ancora, credo che sia scontato che dopo ogni output debba essere aggiunto uno \n... Da quanto ricordo, l'anno scorso ci veniva segnalato molto dettagliatamente quello che doveva essere l'input e soprattutto quello che doveva essere l'output. Per alcuni homework, tra l'altro, venivano addirittura riportate delle 'screenshot'! Non si può ripristinare la tradizione? :-) -- Comment added by Users.DanieleBernardi on 20 Nov 2004 ---- ---+++++ Un po' di chiarezza sull'output In effetti quello che dice DanieleBernardi sarebbe la cosa ottimale! Anche perchè io sono ancora col dobbio: stampare o no la tabella dei numeri primi tra 1 e 10000 ? Perchè la mattina all'università ci viene detto di stamparla e poi su internet questo "compito" non viene richiesto? -- Comment added by Users.MarioBove on 20 Nov 2004 ---- ---+++ X MarioBove Non so bene che ciclo utilizzare, li ho provati un po' tutti... Credo di far errori quanto incremento l'indice di n per eliminare i multipli di n... Avevo provato con un while, ma non va, mi va in loop infinito... con il for non so... -- Comment added by Users.AndreaCosentino on 20 Nov 2004 ---- ---+++ X AlessioSalerno i file txt sono letti ugualmente sia sotto linux che sotto windows... certo se parli di Word,Kword ecc. è normale che ci siano dei problemi nel passaggio da un SO all'altro... -- Comment added by Users.AndreaCosentino on 20 Nov 2004 ---- ---+++ Formattazione Linux/Windows Molte storie, forse troppe per un problema cosi semplice. Riguardo la "formattazione" realmente esiste un problema, tuttavia basta poco per risolverlo. Un file di testo con la formattazione di Linux si puo aprire regolarmente con l'edit di dos dal quale salvarlo per renderlo leggibile e ordinato come l'originale. Al contario, un file di testo creato su Windows non riscontrerà problemi su Linux. Se qualcuno di voi non volesse utilizzare l'edit per salvare, potrà anche scaricare EditPadPro per Windows che consente di leggere files di diversi format. -- Comment added by Users.RiccardoProietti on 20 Nov 2004 ---- ---++++ Formattazione Linux/Windows Ragazzi ma perchè perdete tempo per un problema così inutile, la consegna dell'esercizio prevede che esso sia incollato sulla pagina web perciò, che siate sotto ambiente linux o windows la cosa è del ttt indifferente !!!---+ttosto cercate di farlo girare !!! -- Comment added by Users.GiuseppeDiFederico on 20 Nov 2004 ---- ---+++ x AndreaCosentino Un ciclo vale l'altro, comunque, devi avere 2 variabili, dove in 1 hai il numero del quale vuoi cancellare tutti i suoi multipli nell'altra fai la somma. Esempio: n è uguale al numero per il quale dovrai cancellare tutti i suoi multipli. while( multipli < nummax) { multipli = multipli---+ n; array[multipli-1] = 0; } <br> ovviamente dovrai fare 2 cicli annidati (o almeno io ho risolto così il problema) per scorrere l'array e trovarti tutti i numeri da annullare.<br> spero di essermi spiegato bene....<br> ciao -- Comment added by Users.MarioBove on 20 Nov 2004 ---- ---+++ x MarioBove Grazie Mario, ma finalmente dopo lunghi sforzi ci sono riuscito da solo, fortunamente... Mi eliminava solo il primo multiplo, perchè nel for che avevo usato non incrementavo un secondo indice con l'i iniziale... non so se mi sono spiegato... E' difficile proprio spiegare a parole un programma o un problema derivante da esso stavo notando... Ora mi è venuto il dubbio se devo stampare o no la tabella: sul sito non dice niente, però Salvo lo ha detto a lezione... Boh! -- Comment added by Users.AndreaCosentino on 20 Nov 2004 ---- ---+++ Infatti! Come dicevo io Salvo lo disse a lezione di stamparla, ma sul sito non c'è scritto nulla in merito, ed in realtà non è scritto nemmeno molto chiaramente come vuole l'output quando uno inserisce un numero intero in input..... Speriamo che prima del 30 Novembre un professore ci dia una risposta! ciao -- Comment added by Users.MarioBove on 20 Nov 2004 ---- ---+++ Per chi ha finito il programma... Ragazzi, mi servirebbero i numeri primi da 9901 a 10000, per testare il programma, la prudenza non è mai troppa eheh -- Comment added by Users.CristianCarbone on 20 Nov 2004 ---- ---+++ x CristianCarbone ecco:<br> 9001 9007 9011 9013 9029 9041 9043 9049 9059 9067 9091 9103 9109 9127 9133 9137 9151 9157 9161 9173 9181 9187 9199 9203 9209 9221 9227 9239 9241 9257 9277 9281 9283 9293 9311 93 19 9323 9337 9341 9343 9349 9371 9377 9391 9397 9403 9413 9419 9421 9431 9433 9437 9439 9461 9463 9467 9473 9479 9491 9497 9511 9521 9533 9539 9547 9551 9587 9601 9613 9619 9623 9629 9631 9643 9649 96 61 9677 9679 9689 9697 9719 9721 9733 9739 9743 9749 9767 9769 9781 9787 9791 9803 9811 9817 9829 9833 9839 9851 9857 9859 9871 9883 9887 9901 9907 9923 9929 9931 9941 9949 9967 9973 <br><br> ciao <br> P.S. aggiornata thx -- Comment added by Users.MarioBove on 20 Nov 2004 ---- ---+++ Problema il programma funziona benissimo, solo che quando inserisco 0, al posto di uscire subito, mi stampa un altro 0 e poi esce... Come posso ovviare a questo problema? -- Comment added by Users.AndreaCosentino on 20 Nov 2004 ---- ---++++ Problema Potresti usare un if che controlla se il numero di input è uno 0 allora fermi tutto con un break . Altrimenti inserirlo nella condizione del ciclo con un and. Ciao :) -- Comment added by Users.MarioBove on 20 Nov 2004 ---- ---+++ link posto un link che puo' interessare a molti: http://wims.unice.fr/wims/it_tool~number~primes.it.html invito tutti a rispondere alle domande solo se siete sicuri della risposta, se voi sbagliate, fate sbagliare anche un altro utente. -- Comment added by Users.CristianCarbone on 20 Nov 2004 ---- ---+++ CASO x>10000 Come ci si deve comportare nel caso in cui l'input sia maggiore di 10000? Salvo a lezione mi sembra che abbia detto che in quel caso il programma deve uscire e non attendere un nuovo input. Chi è che ha capito chiaramente che bisogna fare?? Io l'ho programmato per uscire come con lo 0.Ciao -- Comment added by Users.LucaOlivieri on 20 Nov 2004 ---- ---+++ Senza titolo? Comunque riguardo al fatto della compilazione il mio problema è che in windows non compaiono errori mentre lo stesso programma su linux si come mai???? Questo problema si è verificato anche ad altre persone -- Comment added by Users.AlessioSalerno on 20 Nov 2004 ---- ---++++ MarioBove X CristianCarbone La lista dei numeri primi postata mi sembra errata.. o no? per esempio 9005 no è divisibile solo per 9005 e per 1 ma anche per 5. Risultato=1801 E via via scorrendo la lista se ne trovano altri! Ricontrollate i vosti programmi!! -- Comment added by Users.GianmauroAresti on 20 Nov 2004 ---- ---+++ link GianmauroAresti ho postato il link dove ci sono i numeri primi... -- Comment added by Users.CristianCarbone on 20 Nov 2004 ---- ---+++ Non lo volevo dire... Eh, anch'io avevo notato l'insattezza della lista postata. Per correttezza non sono intervenuto, questa area non dovremmo trasformarla in una sorta di forum. "DomandeHomeWork02" non Help Online per la risoluzione degli esercizi. -- Comment added by Users.RiccardoProietti on 21 Nov 2004 ---- ---+++ x GianmauroAresti Grazie! Avevo fatto un errore stupidissimo in una condizione cacchio! grazie mi hai salvato ;) Devo sempre controllare 20000 i programmi. Comunque una domanda.... Si possono commentare le righe di codice oppure l'IA ha problemi? Grazie, ciao. -- Comment added by Users.MarioBove on 21 Nov 2004 ---- ---+++ 10000 se l'indice dell'array va da 0 a 9999, come ci si comporta con il 10000? -- Comment added by Users.AndreaCosentino on 21 Nov 2004 ---- ---+++ Dove sono finiti i professori??? Ancora nessun professore si è deciso a chiarire la faccenda della stampa di questa benedetta tabella.Il mio programma la genera ma non la stampa, va bene così?O devo farle stampare?Bho! Dove sono finiti i professori??? -- Comment added by Users.StefanoConte on 21 Nov 2004 ---- ---+++ Re: Dove sono finiti i professori??? no nn si deve stampare la tabella. l'array serve solo x sapere se l'intero è primo o no.. -- Comment added by Users.AlessandroSabellico on 21 Nov 2004 ---- ---+++ Dove è mario bove? Mario sono ciro ma questa tabella si deve stampare o no? Ma a te è venuto questo esercizio? -- Comment added by Users.CiroIavazzo on 21 Nov 2004 ---- ---+++ X CiroIavazzo Alla fine ci sono riuscito, solo che non sò se dobbiamo stampare o meno la tabella con i numeri primi... Il professore all'università disse di si... qui dicono di no... Attendiamo e vediamo. Ciao -- Comment added by Users.MarioBove on 21 Nov 2004 ---- ---++++ x AndreaCosentino L'index dell'array va da 0 a 9999, ma i numeri contenuti devono andare da 1 a 10000, perciò ogni entry nell'array non rappresenta il numero indicato dal suo index, ma quello indicato dall'index più uno; cioè, per accedere al numero 10 devi fare array[9], per accedere all'1 devi fare array[0], eccetera. Altrimenti se vuoi evitare questa complicazione puoi anche dichiarare l'array con 10001 locazioni, così semplicemente la locazione 0 rimarrà inutilizzata. ;-) -- Comment added by Users.AlbertoLaRocca on 22 Nov 2004 ---- ---+++ Giusto? correggetemi se sbaglio, creiamo un array, ponisamo tutti i suoi elementi ad uno, poi ci calcoliamo i numeri primi e nei suoi corrispondenti array gli mettiamo lo 0, poi riceviamo in input il numero , controlliamo nella tabella e se nell'array è contenuto 1 è composto e lo stampiamo, se è contenuto 0 è primo e lo stampiamo! giusto? -- Comment added by Users.AntonioFelitti on 22 Nov 2004 ---- ---++++ Giusto? Non esattamente, è il contrario.... Se è primo stampi 1 se è composto stampi 0 se è negativo stampi -1 e se è 0 esci dal programma. ciao -- Comment added by Users.MarioBove on 22 Nov 2004 ---- ---+++ composto?? che vuol dire composto ? -- Comment added by Users.SimoneDiCola on 22 Nov 2004 ---- ---++++ composto?? che non è primo... ;-) -- Comment added by Users.AlbertoLaRocca on 22 Nov 2004 ---- ---+++ Senza titolo? Se il valore è maggiore di 10000 il prog che deve fare? l'output lo devo mandare a capo o va bene tutto appiccicato?cioè l'output è così: 1 12 14 0 oppure 1 1 4 0 -- Comment added by Users.AndreaMoro on 23 Nov 2004 ---- ---+++ Senza titolo? Da quel che si sà (visto che per ora nessun professore ha risposto) è che al momento dei test non verranno presi in considerazione numeri > di 10000. Comunque io ho messo nel mio programma un ciclo che esce solo con lo 0 , quindi nel caso in cui si inserisca un numero maggiore di 10000 questo non farebbe nulla e resterebbe in attesa di un altor numero. Ciao -- Comment added by Users.MarioBove on 23 Nov 2004 ---- ---+++ Caso n>10000 Effettivamente la traccia non era chiara nel caso n>10000: in questo caso il programma deve STAMPARE -1 e chiedere un nuovo input come nel caso negativo. Chi avesse sottomesso gia' un programma che non si comporti così è pregato di risottomettere l'esercizio. A beneficio di tutti ricordo che una consegna successiva SOVRASCRIVE una precedente. -- Comment added by Users.IvanoSalvo on 23 Nov 2004 ---- ---+++ La tabella NON va stampata E anzi attenzione a tutti gli output!!!! mettete solo printf come segue: printf("%d\n", nome_variabile); -- Comment added by Users.IvanoSalvo on 23 Nov 2004 ---- ---++++ Caso n>10000 e te pareva: lo devo rispedire -_-' -- Comment added by Users.AlbertoLaRocca on 23 Nov 2004 ---- ---+++ Come faccio? Non riesco a consegnare, la pagina di consegna non funziona; che fo'? -- Comment added by Users.AlbertoLaRocca on 23 Nov 2004 ---- ---++++ Come Faccio Attendi!!! -- Comment added by Users.DavidTaboada on 23 Nov 2004 ---- ---++++ Come Faccio Grazie per il consiglio, anch'io sono sempre per le soluzioni ad alta tecnologia, proprio come Scavolini e Lorella Cuccarini; tuttavia mi sorge un dubbio: cosa attendo, Babbo Natale? -- Comment added by Users.AlbertoLaRocca on 24 Nov 2004 ---- ---++++ Come Faccio A differenza delle cucine Scavolini, per poter utilizzare la pagina di scrittura occorre essere stati abilitati in scrittura da un prof, mostrandogli un documento di identità valido. Potrebbe trascorrere qualche giorno finche' venga completata la registrazione: se quindi hai effettuato la registrazione da poco aspetta, altrimenti insegui un prof e mostragli il tuo documento. -- Comment added by Users.DanieleBernardi on 24 Nov 2004 ---- ---+++ Caledario:aggiorniamolo!!! -- Comment added by Users.StefanoConte on 24 Nov 2004 ---- ---++++ Lo zero A 10000 devo stampare -1 in quanto il vettore arriva effettivamente fino a 9999 ? Dico bene? qualcuno confermi o smentisca perchè ho finito e mi manca da sistemare solo questa piccola caxxata -- Comment added by Users.GiuseppeDiFederico on 24 Nov 2004 ---- ---+++ Una domanda io del programma non ci ho capito una mazza: abituato a creare programmi di gestione di file mi trovo spiazzato a fare programmi cosi' idioti. Qualcuno puo' aiutarmi??(STUPIDO) -- Comment added by Users.SimoneJack on 24 Nov 2004 ---- ---++++ Una domanda Devi generare numeri primi da 1 a 10000 così come Eratostene, senza computer, riuscì a fare. Successivamente, il tuo programma riceverà in input un intero: regolati secondo quanto è scritto nel testo dell'esercizio. <br> Realizzare il programma è molto semplice e, oltre i vettori e un po' di pazienza, non richiede altro. Se vuoi informazioni su Eratostene e sul suo algoritmo ti basta una ricerca, che so, su google. -- Comment added by Users.DanieleBernardi on 24 Nov 2004 ---- ---+++ Senza titolo? ma che vuol dire tutto questo? L'unica maniera di far sapere al computer che quello che inserisco e' un numero primo devo usare per forza il modulo altrimenti non lo capira' mai. Io ho provato ad usare il modulo ma niente. Sarebbe stato molto melgio un esercizio che calcola il fattoriale con la serie di fibonacci o un bell'ordinamento di array.Non ha senso questo esrecizio. Io spero che Salvo ci fara' vedere come fare altrimenti sara' una tragedia -- Comment added by Users.SimoneJack on 24 Nov 2004 ---- ---++++ .....SimoneJack Perchè tiri in ballo fibonacci, vabbè....ma scusa non mi sembra tanto difficile la spiegazione dell'esercizio....io ci son più o meno riuscito, se non fosse che devo ancora inserire sto -1, che come l'ho fatto la prima posizione del vettore, mi rimane si a 1, ma non viene mai letta e a 10000 non sa che leggere...ma questo è il minimo.... la spiegazione sul sito è più che decente.... ma quale modulo....il etodo che devi usare è quello di eratostene.....altrimenti che caspita te lo intitolava a fare Crivello di Eratostene.???? cominci da 2, quindi cancelli 4,6,8,10 fino alla fine...poi continui 3....cancelli 6, 9,12, 15... 4...è già stato cancellato 5....cancelli 10(chè ègià stato cancelato ma mettere 0 al posto di 0 non cambia),15,20(idem) 6....già cancellato e così via----- Che ti devo dire se non riesci a fare questi magari ti rifai dopo dove sei bravo....alla gestione dei files vero? Magari gli altri non lo sono... -- Comment added by Users.DavidTaboada on 24 Nov 2004 ---- ---++++ x DanieleBernardi La storia di Scavolini e Lorella Cuccarini era solo un piccolo delirio, in realtà il problema era proprio della pagina scrausa che non funzionava, adesso funzia. P.S.: non credo che Eratostene col suo crivello fosse riuscito a trovare tutti i numeri primi da 1 a 10000... -- Comment added by Users.AlbertoLaRocca on 24 Nov 2004 ---- ---+++ Aiutooooo Allora...ho scritto il mio bel programmino....lo compilo e nn mi da alcun errore nè warning... poi se lo avvio mi scrive sto schifio qui... Segmentation Fault (core dumped) e mi crea tralaltro un file di nome core nella cartella mia... Ma che accidenti ho creato? un mostro? ma soprattutto...ho provato a modificare la grandezza dell'array a 100....e guarda un po'....funziona alla perfezione! qualcuno mi sa aiutare? -- Comment added by Users.FedericoFranzoni on 24 Nov 2004 ---- ---++++ x SimoneJack Fibonacci? Ok, hai fatto... lo sboooroooone... adesso fammi un programma che trova tutti i numeri primi da 1 a 10000 utilizzando il modulo, Fibonacci (questo sconosciuto), e che li salva su un file che si chiama "PTIPM.txt"*. * "PTIPM" = "Programma Troppo Idiota Per Me" asd. -- Comment added by Users.AlbertoLaRocca on 24 Nov 2004 ---- ---++++ Federico Franzoni, L'errore che hai ottenuto significa che il tuo programma tenta di accedere ad un'area di memoria al di fuori di quella che gli è stata assegnata, e in modalità protetta chiaramente non si può fare. L'errore è evidente: l'array da te creato è troppo piccolo, oppure l'algoritmo che usi è errato perché finisce per leggere/scrivere locazioni che non stanno nell'array; difatti se ingrandisci l'array diventa tutto legale. Se usi un IDE fai il debug e cerca di scoprire quand'è che il programma accede all'array con un index "out of bound". -- Comment added by Users.AlbertoLaRocca on 24 Nov 2004 ---- ---+++ Difficile ? ma come state Ragazzi pensate che questo programma sia impossibile? Allora lasciate perdere programmazione e datevi alla filosofia!! Un programma su Fibronacci? Ma come fà il professore a darci un programma di 5 righe di codice che nn richiedono ragionamento alcuno e che tra parentesi lo trovi sul libro in ttt le salse? Credimi tra un po gli homework diventeranno davvero difficili (basta che guardi quelli dell'anno scorso sul sito) !!non tiriamo su bandiera bianca troppo presto!!! -- Comment added by Users.GiuseppeDiFederico on 24 Nov 2004 ---- ---+++ Re: Difficile ? ma come state Non mi sembra che ci sia qualcuno abbia alzato bandiera bianca, le domande....richieste di aiuto ci sono sempre....se mai c'è stato uno che smerda*a questi esercizi e che voleva la gestione di files(non dico chi ;-) ) Mi sembra normale che in molti comincino ad avere problemi....in questo esercizio l'unico problema che vedo è un pochino di logica per fare un piccolo ciclo.... ma appunto mettetevi con carta e penna non subito al pc a provare a compilare. -- Comment added by Users.DavidTaboada on 24 Nov 2004 ---- ---++++ x AlbertoLaRocca e altri piccoli OT Sì sì, l'avevo capito il piccolo delirio :)<br>E poi, diciamocela tutta, una volta che uno partorisce il suo bell'algoritmo se ne va in giro col suo crivello fino a tarda notte! (altro piccolo delirio :-))<br> Effettivamente questo esercizio è interessante e soprattutto permette di concentrarsi più sull'algoritmo in sé che sulla codifica... Soprattutto, se continuiamo a parlare di gestione file va a finire che il prof ce lo assegnerà per uno dei prossimi homework :-) -- Comment added by Users.DanieleBernardi on 24 Nov 2004 ---- ---+++ Considerazioni Differentemente rispetto ad altre esercitazioni, credo sia fondamentamentale acquisire autonomamente schemi logici a livello mentale. Tali schemi nel caso della gestione dei files vengono prefissati lasciando al programmatore poco lavoro di risoluzione del problema. Al secondo homework di un corso tra i primi di un percorso piuttosto difficile, non si puo dire "è difficile". Se realmente lo fosse, bisognerebbe provvedere a colmare le proprie lacune. E' un po come logica... le definizioni sono chiare, come per tutti penso siano chiare le spiegazioni delle variabili, array, puntatori a livello concettuale. -- Comment added by Users.RiccardoProietti on 24 Nov 2004 ---- ---+++ Vari controlli dopo aver creato il crivello di eratostene Volevo sapere se i controlli vanno fatti sul crivello? o ci basta una semplice if(...) {} else ? -- Comment added by Users.DarioFiorenza on 25 Nov 2004 ---- ---++++ Tra un po' gli homeworks diventeranno difficili? ma come stai ho visto gli homeworks dell'anno scorso: ma veramente ti sembravano difficili? vuoi che te lo dico io un bel programma difficile? -- Comment added by Users.AlbertoLaRocca on 25 Nov 2004 ---- ---+++ <!--<font color="red">(attempt to change authorization settings detected)</font> --> -- Comment added by Users.AndreaBalzi on 25 Nov 2004 ---- ---+++ Doh! -- Comment added by Users.AndreaBalzi on 25 Nov 2004 ---- ---+++ Presunzione Alcune cose sono difficili perchè non riusciamo a concepire quanto siano facili. Semplicemente si focalizza l'attenzione sulla difficoltà e non sul problema. In ogni caso, ritengo sia poco rispettoso dare giudizi senza cognizione di causa. Se non avessi esperienze di programmazione passata sarebbe stato difficile un approccio a un corso del genere senza la familiarità che molti devono ancora acquisire. -- Comment added by Users.RiccardoProietti on 25 Nov 2004 ---- ---+++ Ma Scusate! Ma vi rendete Conto che si sta parlando ancora del primo cavolo di corso di programmazione, cosa pensate di diventare programmatori per un'impresa già a gennaio? -- Comment added by Users.DavidTaboada on 25 Nov 2004 ---- ---+++ Re: Presunzione Ammazza che filosofo! <verbatim>*grat grat*</verbatim> -- Comment added by Users.AlbertoLaRocca on 25 Nov 2004 ---- ---+++ Lavorare in una ditta ... Basta imparare il php per lavorare in una piccola ditta, compratevi il libro e imparate il php in 10 giorni d'impegno. Penso non siano questi i vostri obiettivi no ? Oggi una software house cerca competenze extra al di la di una semplice laurea, flessibilità nel lavoro e abilità rare non acquisibili tramite lo studio. Alcune ho sentito, verificano gli anni impiegati per laurearsi. -- Comment added by Users.RiccardoProietti on 25 Nov 2004 ---- ---++++ Lavorare in una ditta allora allora allora:<br> 1) non basta imparare il php per lavorare in una piccola ditta, non di questi tempi, a meno che non sei disposto a farlo gratis<br> 2) non è detto che questi non siano i nostri obiettivi: qualcuno dopo la laurea potrebbe benissimo cercare dei lavori in cui si occupa di programmazione web e, nello specifico, potrebbe preferire la programmazione in php<br> 3) oggi le ditte non cercano un bel nulla al di là della "semplice" (mmah!) laurea: una buona laurea perfettamente in corso e col massimo dei voti ti apre tutte le porte del mondo del lavoro (o quasi)<br> 4) quali sarebbero mai queste abilità rare non acquisibili tramite lo studio? facci un esempio...<br> 5) *qualsiasi azienda* verifica gli anni impiegati per laurearsi: se hai conseguito una laurea quinquennale in 5 anni precisi col massimo dei voti vengono loro a cercarti, sennò se l'hai conseguita in 10 anni e hai ottenuto 90 su 110 non ti guardano neanche, è meglio fare l'idraulico (e non è uno scherzo: gli idraulici in genere guadagnano di più di certi tipi di ingegneri). -- Comment added by Users.AlbertoLaRocca on 26 Nov 2004 ---- ---+++ EXIT CODE di GDB Sapete per caso dove reperire una lista generica degli "exit code" generati dal debugger gdb, e del significato relativo? Grazie anticipatamente per la collaborazione -- Comment added by Users.MarcoDodi on 26 Nov 2004 ---- ---- ---+++ USATE QUESTO FORUM PER IL SUO SCOPO USATE QUESTO FORUM PER IL REALE SCOPO PER CUI E' STATO CREATO CIOE' PARLARE E DISCUTRE DELL'HOMEWORK2 NON DI ALTRO CIAO -- Comment added by Users.FrancescoLatorre on 26 Nov 2004 ---- ---+++ D'accordo, era esattamente questa la mia intenzione. <!-- * Set DENYTOPICCHANGE = CosimoVergine --> -- Comment added by Users.AlbertoLaRocca on 26 Nov 2004 ---- ---+++ Torniamo al compito ragazzi ma quell' "inserire l'istruzione :" che si legge nella pagina del compito a che istruzione si riferisce???? qualcuno l'ha capito?? -- Comment added by Claudio on 26 Nov 2004 ---- ---+++ Che ve ne pare? ragazzi secondo voi questo output è corretto? rispecchia quello che chiede l'esercizio? in particolare posso mettere i \n o non servono? qualche prof o assistente può dissipare questo dubbio? <pre> [cla@localhost c]$ ./eratostene -9 -1 10000 0 10001 -1 22 0 11 1 0 [cla@localhost c]$ </pre> -- Comment added by Claudio on 26 Nov 2004 ---- ---++++ Re: Che ve ne pare! per i numeri che hai inserito gli output sono giusti, si spera che sia buono anche per gli altri certo! -- Comment added by Users.DavidTaboada on 26 Nov 2004 ---- ---+++++ Che ve ne pare! che i numeri che stampa siano giusti e che l'output sia giusto anke per altri nn c'e dubbio il fatto è sua maestà il correttore automatico vuole l'ouputp scritto per righe? in fondo credo che la correzione avvenga scrivendo tipo: echo 10\n11\n-5\n | ./eratostene > eratostene.result per poi leggere riga per riga il file generato... Vi pare giusto? Non è che qualche professore ci da qualche specifica in più sul programma che corregge i risulatai ? (tipo dare i sorgenti nn sarebbe una cattiva idea) -- Comment added by Claudio on 26 Nov 2004 ---- ---+++ x Claudio l'output come numeri mi sembra che vada bene, ma credo che devi per forza mettere i newlines, perché l'output secondo me deve coincidere carattere per carattere con quello preparato per il test automatico. io i formati delle printf li ho fatti tutti così: "%d\n".<br> per quanto riguarda la dicitura "inserire l'istruzione:", penso che la pagina sia incompleta, forse il prof voleva dire che dobbiamo inserire la setvbuf, come nei test degli anni precedenti; prof? -- Comment added by Users.AlbertoLaRocca on 27 Nov 2004 ---- ---+++ ho fatto il "core" del programma non mi è chiaro molto bene questo: Input Il vostro programma riceve in input una sequenza di numeri interi chiusa da uno zero; cosa vuol dire "chiuso da uno zero" ? che se incontro "0" si ferma? ad esempio con un: if ( ( a= getchar()) == '0' ){ facciofermarelinput(); } oppure è stato spiegato male e devo semplicemente usare robba di sto tipo: scanf("%d", &var); -- Comment added by Users.ValerioColtre on 27 Nov 2004 ---- ---+++ aggiungo.. mi unisco alla richiesta di AlbertoLaRocca, anche riguardo l'output... per ora ho usato lo: scanf("%d",&var); // che mi sembrava piu logico e per l'output invece NON ho usato il newline ( vuol dire che produco output del tipo: -1-1-10 || -1-1-11 ) cmq aspetto delucidazioni prima di consegnare... :| -- Comment added by Users.ValerioColtre on 27 Nov 2004 ---- ---+++ x ValerioColtre Allora, per la prima domanda significa, che loro testeranno il tuo programma con un file nel quale saranno inseriti una <b>serie</b> (es. di serie: 5 8 9 7 4 1 2 5 6 1 0) chiusa da uno <b>0</b>.<br> Per quanto riguarda la seconda domanda l'output del tuo porgramma deve essere solo il numero da stampare ed ogni numero deve essere su una sola riga quindi devi usare :<br> printf("%d\n",n);<br> ciao -- Comment added by Users.MarioBove on 27 Nov 2004 ---- ---+++ mmm non mi sembra molto logico.. ma se cosi deve essere fatto... cosi lo farò! il punto è che ho fatto un programma che calcola i numeri primi da 1 a 10000 e poi per provarlo non possono essere immessi numeri come "1003" oppure "5670", perche c'è lo "0". boh, spero tu sia sicuro di quello che mi dici :) ti saluto! -- Comment added by Users.ValerioColtre on 28 Nov 2004 ---- ---+++ Senza titolo? non hai capito......<br> Una serie di numeri è una serie di numeri....<br> Quando tu testi il tuo programma e immetti una <b>serie</b> di numeri è la stessa cosa.<br> Vuol dire:<br> 1 INVIO <br> 187 INVIO <br> 34064 INVIO <br> 4730 INVIO <br> -433 INVIO <br> <b>0</b> INVIO <br> <br> Non centra nulla se c'è uno 0 nel numero che ti inserisce, lo 0 finale stà ad indicare che la sequenza di numeri che mandano al tuo programma terminerà con uno zero, come nell'esempio che ti ho fatto sopra....<br> Mi sono spiegato? -- Comment added by Users.MarioBove on 28 Nov 2004 ---- ---++++ Senza titolo? oh.. si :) ora meravigliosamente c'è una bella differenza tra quello che hai detto ora e quello che hai detto prima ^^ cmq grazie della delucidazione -- Comment added by Users.ValerioColtre on 28 Nov 2004 ---- ---+++ Non ho capito una cosa. Ma il Crivello di Eratostene in questo programma a cosa ci serve usarlo? Mi spiego meglio. Noi in input diamo un numero tramite lo scanf ok? Da come dice il testo il programma deve fare solamente un test nel caso il numero sia primo o no e nel caso in cui sia negativo o maggiore di 10000. Ecco quindi il Crivello di Eratosten dov'è che lo usiamo? Dov'è che usiamo quel procedimento per il quale si cancellano tutti i multipli dato che devo fare solo dei semplici controlli sull'input che io do? Grazie -- Comment added by Users.EmanueleGallo on 28 Nov 2004 ---- ---++++ Non ho capito una cosa. il crivello di Eratostene per identificare i numeri primi, prima dell'input dell'utente...mi spiego con un esempio: 1^fase)creazione dell'array e inizializzazione al valore 1 per tutte le celle 2^fase)azzeramento del valore delle celle che hanno come indice un numero primo (crivello di Eratostene) 3^fase)input dell'utente 4^fase)output del programma (0,1 o -1) Ovviamente questo metodo per scovare i numeri primi non è l'unico ma sicuramente il più facile per valori piccoli come quelli che dobbiamo usare noi! -- Comment added by Users.LorenzoMariaGinepra on 28 Nov 2004 ---- ---+++++ Non ho capito una cosa ok, ma la seconda fase è imprecisa: dal momento che le locazioni dell'array sono zero-based (vanno da 0 a 9999) mentre l'intervallo di numeri da analizzare va da 1 a 10000, bisogna scalare tutto di 1, quindi non bisogna azzerare lo slot che ha per indice un numero primo, ma quello che ha per indice un numero primo meno uno. in alternativa si può dichiarare un array con una locazione in più (10001 in totale), in maniera tale che la locazione 0 la si può lasciare inutilizzata, e si può lavorare normalmente su tutte le altre. -- Comment added by Users.AlbertoLaRocca on 28 Nov 2004 ---- ---+++ Senza titolo? Io ho pensato di svilupparlo nel seguente modo...per faovre ditemi se è un'idea intelligente o fallimentare. Nel main dichiaro un array di dimensioni SIZE definite mediante una define. Invoco una funzione chiamata inizializza che mi inizzializza tutti gli elementi del vettore ad 1 Poi chiamo una funzione che mi elimina tutti i multipli di 2 (vede se il numero%2 !=0 allora lo elimina) Poi faccio la stessa cosa con una funzione che elimina tutti i multipli di 3 chiamo una funzione che elimina tutti i multipli di 5 e infine chiamo una funzione che elimina tutti i multipli di 7 e così dovrei aver trovato i numeri primi.... Giusto? -- Comment added by Users.AndreaNobili on 28 Nov 2004 ---- ---+++ Senza titolo? Allora dovrei creare una funzione diciamo Crivello di Eratostene alla quale passo un parametro (che sarebbe l'input che do io) giusto? -- Comment added by Users.EmanueleGallo on 28 Nov 2004 ---- ---+++ X Andrea Nobili Si---+ o meno credo che questa sia la strategia che abbiamo usato quasi ttt e ti posso subito dire che è giusta, per eliminare credo che intendi dire porre a 0 il corrispettivo elemento all'interno del vettore. Ti sugerisco anche di nn fare una funzione per inizializzare, perchè se ci pensi bene alla fine è solo un for con tre righe di codice, ---+ttosto andando avanti nel problema troverai opportuno farne una che una volta ad esempio tolti ttt i multipli di 5 o di qualsiasi altro numero ti sposti al prossimo numero primo (o meglio al prossimo uno del vettore) nel caso di 5 ti dovrebbe portare a 7 (in quanto 6 già è stato posto a zero con il 2). Spero ti sia stato di aiuto -- Comment added by Users.GiuseppeDiFederico on 29 Nov 2004 ---- ---+++ Senza titolo? oppure semplicemente if v[i]!=0 -- Comment added by Users.DanieleFaraci on 29 Nov 2004 ---- ---+++ Senza titolo? Però non ho capito bene come faccio a vedere se un numero è primo o no. Come faccio a dirgli che quel numero è primo? -- Comment added by Users.EmanueleGallo on 29 Nov 2004 ---- ---+++ Cioè basta dirgli if (v[i]/v[i] && v[i]/1) ????? -- Comment added by Users.EmanueleGallo on 29 Nov 2004 ---- ---+++ Non credo cmq dato che tutti i numeri possono essere divisi per se stessi e per 1. Quindi come faccio? -- Comment added by Users.EmanueleGallo on 29 Nov 2004 ---- ---+++ AIUTOOOOO avevo consegnato l'esercizio sbagliato.... adesso ho riconsegnato quello esatto... adesso quello di prima si è cancellato? spero di si :( -- Comment added by Users.ValentinaCucurachi on 29 Nov 2004 ---- ---++++ AIUTOOOOO Tranqui'! ;-) <br>L'importante è che non hai utilizzato la pagina di consegna sbagliata, perché in questo momento ci sono 2 pagine di consegna, una per l'hw 2 e una per il 3. -- Comment added by Users.AlbertoLaRocca on 29 Nov 2004 ---- ---+++ delucidazione.. scusate ma con un input così 2111111 1999991 1111191 1999191 1919191 1919191 1111111 esce fuori un output così? 2111111 1000001 1111101 1000101 1010101 1010101 1111111 -- Comment added by Users.AntonioFelitti on 08 Dec 2004 ---- ---++++ delucidazione.. ho sbagliato la formattazione ma ad ogni spazio equivale un "invio", scusate.. -- Comment added by Users.AntonioFelitti on 08 Dec 2004 ---- ---+++ delucidazione.. la sorgente è [0][0].. -- Comment added by Users.AntonioFelitti on 08 Dec 2004 %COMMENT{button=" Aggiungete la domanda " mode="before"}% <a name="form"> -- Users.IvanoSalvo - 18 Nov 2004
E
dit
|
A
ttach
|
Watch
|
P
rint version
|
H
istory
: r116
<
r115
<
r114
<
r113
<
r112
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r116 - 2004-12-08
-
AntonioFelitti
Log In
or
Register
Programmazione1/AA0506/PZ Web ...
Programmazione1/AA0506/PZ Web
Programmazione1/AA0506/PZ Web Home
Users
Groups
Index
Search
Changes
Notifications
Statistics
Preferences
User Reference ...
User Reference
ATasteOfTWiki
TextFormattingRules
TWikiVariables
FormattedSearch
TWikiDocGraphics
TWikiSkinBrowser
InstalledPlugins
ChangeEmailAddress
ChangePassword
ResetPassword
Prenotazioni esami
Laurea Triennale ...
Laurea Triennale
Algebra
Algoritmi
Introduzione agli algoritmi
Algoritmi 1
Algoritmi 2
Algoritmi per la
visualizzazione
Architetture
Prog. sist. digitali
Architetture 2
Basi di Dati
Basi di Dati 1 Inf.
Basi di Dati 1 T.I.
Basi di Dati (I modulo, A-L)
Basi di Dati (I modulo, M-Z)
Basi di Dati 2
Calcolo
Calcolo differenziale
Calcolo integrale
Calcolo delle Probabilitą
Metodi mat. per l'inf. (ex. Logica)
canale AD
canale PZ
Programmazione
Fond. di Programmazione
Metodologie di Programmazione
Prog. di sistemi multicore
Programmazione 2
AD
EO
PZ
Esercitazioni Prog. 2
Lab. Prog. AD
Lab. Prog. EO
Lab. Prog. 2
Prog. a Oggetti
Reti
Arch. di internet
Lab. di prog. di rete
Programmazione Web
Reti di elaboratori
Sistemi operativi
Sistemi Operativi (12 CFU)
Anni precedenti
Sistemi operativi 1
Sistemi operativi 2
Lab. SO 1
Lab. SO 2
Altri corsi
Automi, Calcolabilitą
e Complessitą
Apprendimento Automatico
Economia Aziendale
Elaborazione Immagini
Fisica 2
Grafica 3D
Informatica Giuridica
Laboratorio di Sistemi Interattivi
Linguaggi di Programmazione 3° anno Matematica
Linguaggi e Compilatori
Sistemi Informativi
Tecniche di Sicurezza dei Sistemi
ACSAI ...
ACSAI
Computer Architectures 1
Programming
Laurea Magistrale ...
Laurea Magistrale
Percorsi di studio
Corsi
Algoritmi Avanzati
Algoritmica
Algoritmi e Strutture Dati
Algoritmi per le reti
Architetture degli elaboratori 3
Architetture avanzate e parallele
Autonomous Networking
Big Data Computing
Business Intelligence
Calcolo Intensivo
Complessitą
Computer Systems and Programming
Concurrent Systems
Crittografia
Elaborazione del Linguaggio Naturale
Estrazione inf. dal web
Fisica 3
Gamification Lab
Information Systems
Ingegneria degli Algoritmi
Interazione Multi Modale
Metodi Formali per il Software
Methods in Computer Science Education: Analysis
Methods in Computer Science Education: Design
Prestazioni dei Sistemi di Rete
Prog. avanzata
Internet of Things
Sistemi Centrali
Reti Wireless
Sistemi Biometrici
Sistemi Distribuiti
Sistemi Informativi Geografici
Sistemi operativi 3
Tecniche di Sicurezza basate sui Linguaggi
Teoria della
Dimostrazione
Verifica del software
Visione artificiale
Attivitą complementari
Biologia Computazionale
Design and development of embedded systems for the Internet of Things
Lego Lab
Logic Programming
Pietre miliari della scienza
Prog. di processori multicore
Sistemi per l'interazione locale e remota
Laboratorio di Cyber-Security
Verifica e Validazione di Software Embedded
Altri Webs ...
Altri Webs
Dottorandi
Commissioni
Comm. Didattica
Comm. Didattica_r
Comm. Dottorato
Comm. Erasmus
Comm. Finanziamenti
Comm. Scientifica
Comm Scientifica_r
Corsi esterni
Sistemi Operativi (Matematica)
Perl e Bioperl
ECDL
Fondamenti 1
(NETTUNO)
Tecniche della Programmazione 1° modulo
(NETTUNO)
Seminars in Artificial Intelligence and Robotics: Natural Language Processing
Informatica generale
Primo canale
Secondo canale
II canale A.A. 10-11
Informatica
Informatica per Statistica
Laboratorio di Strumentazione Elettronica e Informatica
Progetti
Nemo
Quis
Remus
TWiki ...
TWiki
Tutto su TWiki
Users
Main
Sandbox
Home
Site map
AA web
AAP web
ACSAI web
AA2021 web
Programming web
AA2021 web
AN web
ASD web
Algebra web
AL web
AA1112 web
AA1213 web
AA1920 web
AA2021 web
MZ web
AA1112 web
AA1213 web
AA1112 web
AA1314 web
AA1415 web
AA1516 web
AA1617 web
AA1819 web
Old web
Algo_par_dis web
Algoreti web
More...
PZ Web
Create New Topic
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
Register User
Questo sito usa cookies, usandolo ne accettate la presenza. (
CookiePolicy
)
Torna al
Dipartimento di Informatica
E
dit
A
ttach
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback