# Esercizio 1 # Scrivere un programma che stampa a video e salva # su file la forma di un quadrato. # Il programma chiede all'utuente di inserire # un carattere, la lunghezza del lato e # il nome del file da scrivere. # Il programma deve verificare l'input dell'utente # e se inseirsce più di un carattere allora richiede # di inserire il carattere. # Se la lunghezza non è un numero intero positivo # valido richiede all'utente di inserirla. # Una volta acquisiti i dati, il programma deve # generare il quadrato. # Ad esempio, se il carattere è '$' e la lunghezza # è 5 si avrà: # $$$$$ # $ $ # $ $ # $ $ # $$$$$ # La generazione della stringa da stampare deve # essere implementata in una apposita funzione # che prende in ingresso i dati del carattere e # della lunghezza e restituisce la stringa. # I valori di default della funzione sono # lungezza 3 e carattere "%" # La stringa così generata deve essere stampata a # video e scritta sul file. # La scrittura sul file deve essere eseguita tramite # una apposita procedura che prende in ingresso il # nome del file ed esegue la scrittura sul file # utilizzando il costrutto with ########################################################## # ESERCIZIO 2 # Scrivere un programma che dato un file inserito # dall'utente scrive su un file di nome "conteggio" # il numero di caratteri per ogni riga secondo # la seguente formattazione. # riga 1: 41 caratteri # riga 2: 12 caratteri # ecc... # Il testo da scrivere nel file deve essere generato # da una apposita funzione che prende in ingresso # il nome del file e lo apre in modalità lettura, # esamina le righe per valutare il numero di # caratteri e restituisce la stringa nel formato # dell'esempio. # Se il nome del file non esiste, allora stampa a video # un messaggio di avvertimento ed esce. # La scrittura sul file sarà fatta tramite una # apposita funzione. # Le operazioni sui file devono essere gestite con # il costrutto with # Per comporre ciascuna linea da scrivere sul file # utilizzare il metodo format che restituisce # la stringa sostituendo ogni coppia di # parentesi graffe "{}" uno dei valori passato # come argomento, in base all'ordine. # Esempio: # a=3 # b=99 # stringa = "indice {}: valore {}".format(a,b) # print(stringa) # Ottengo: # "indice 3: valore 99"