---++ Homework (compito per casa) 3 ---++ La sorgente d'acqua Vedi anche: DomandeHomework304, SoluzioneHomework304, RisultatiHomework304 ---- %TOC% ---- ---+++ Descrizione Una matrice di interi di dimensioni m x n rappresenta le quote di un rilievo topografico. In una certa coordinata è presente una sorgente d'acqua. Sapendo che l'acqua può scendere in tutte le direzioni (verticale, orizzontale, diagonale) verso punti con quota minore o uguale, ma ovviamente non può salire, determinare tutte le zone che saranno allagate. Il vostro programma dovrà: ---++++ Input * accettare in input le dimensioni della matrice (due interi, prima il numero di righe, poi il numero di colonne); * accettare in input m x n valori interi che rappresentano le quote (la matrice viene letta per righe). * accettare in input le coordinate della sorgente (due interi, prima la riga, poi la colonna) ---++++ Output * produrre in output una matrice con le stesse dimensioni di quella inserita in input, in cui ci sarà un 2 nella posizione in cui si trova la sorgente d'acqua, 1 in tutti i punti raggiunti dall'acqua, e 0 nei restanti *IMPORTANTE* * non far produrre al programma altri output oltre a quelli richiesti. * stampare gli elementi della matrice di output con il formato: <pre style='background:lightgrey'> %3d </pre> *OSSERVAZIONE* Chi non volesse allocare dinamicamente la matrice, può prevedere delle dimensioni massime (50 righe e 50 colonne): non farò test con dimensioni maggiori. Ecco un esempio di input del programma (i primi due numeri sono le dimensioni della matrice, i successivi 15 gli elementi della matrice e gli ultimi due la posizione della sorgente d'acqua): <pre style='background:lightgrey'> 3 5 8 1 7 4 6 1 2 9 8 3 7 6 1 9 2 0 2 </pre> La matrice *che non dovete stampare* è la seguente: <pre style='background:lightgrey'> 8 1 7 4 6 1 2 9 8 3 7 6 1 9 2 </pre> Con questi dati di ingresso, l'output prodotto dovrà essere il seguente: <pre style='background:lightgrey'> 0 1 2 1 0 1 1 0 0 1 0 0 1 0 1 </pre> __%RED%Attenzione%FINE%__ NON producete nessuna altra scritta oltre i numeri, altrimenti il test automatico del vostro programma fallirà miseramente! :-( ---+++ Come compilare ed eseguire il programma * usate un editor per scrivere il testo del programma e salvatelo in formato *testo semplice* in un file con l'estensione *.c* (ad esempio di nome trexpuno.c) * NON usate Word, Openoffice, Kword, Abiword che introducono caratteri strani * compilate (e contemporaneamente linkate) il programma con il comando <pre style='background:lightgrey'> gcc -g -o eratostene eratostene.c </pre> * eseguite il programma scrivendo <pre style='background:lightgrey'> ./eratostene </pre> ---+++ Come consegnare il programma * Avete tempo fino a *%RED%Giovedì 9 Dicembre alle ore 23.59%FINE%* (ora sono le *%SERVERTIME{"$hou:$min del $day"}%*). * Consegnate *il testo del programma sorgente C* da voi scritto. Io lo compilerò e testerò. * Usate *esclusivamente* la <a href="/~prog1/consegna-Prog12.html">pagina di consegna</a>. Non verranno accettate spedizioni via email. * Set ALLOWTOPICCHANGE = Users.DocentiProg1Group -- Users.IvanoSalvo - 29 Nov 2004
This topic: Programmazione1/AA0506/PZ
>
WebHome
>
HomeWork304
Topic revision: r4 - 2004-12-07 - IvanoSalvo
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