Modulo Problemi elementari
Lezione
(1) Problemi di calcolo
Argomento

Algoritmi: assegnazione, calcolo
Classi e packages: java.util.InputMismatchException, javax.swing.JOptionPane;
Istruzioni JAVA: =, +, -, *, /, Integer.parseInt(str), Integer.parseInt(str), try/catch, System.exit, System.out.println

Esempio 1, Esempio 2, Esempio 3
Promemoria
Trucco
Esercizi da svolgere


Esempio 01
Calcolare l'area di un rettangolo e visualizzare il risultato.
 

Svolgimento esempio n. 01

  Analisi
 

Quando vogliamo risolvere un problema con il computer dobbiamo innanzitutto chiederci: qual è il procedimento per risolvere questo problema?

Per soluzione "informatica" di un problema non si intende quindi il risultato di un problema, ma il procedimento mediante il quale è possibile risolvere un problema.

Per ricercare il procedimento risolutivo (migliore) è necessario porsi innanzi tutto due domande:

1. Quali sono i dati richiesti (dati in output)?

l'area del rettangolo (che chiameremo "area")

questo dato è esplicitamente previsto nel testo dell’esercizio

2. Quali sono i dati che servono per produrre quello che è richiesto (dati in input)?

  • base del rettangolo (che chiameremo "base")
  • altezza del rettangolo (che chiameremo "altezza")
questi dati non sono indicati esplicitamente nel testo ma, visto che noi sappiamo come si calcola l'area del rettangolo sarà facile intuire che ...
     
     
 

sintetizzando..

 

 

Input

Output

base

area

altezza

 
  Diagramma a blocchi
 
  Pseudo codifica
 

Inizio

 

 

base <- 0 , altezza <- 0 , area <- 0

Immetti base
Immetti altezza

area <- base * altezza

Visualizza area

Fine

 

  Codifica
Clicca qui
torna su
Esempio 02
Calcolare e visualizzare il risultato della differenza di due numeri.
 

Svolgimento esempio n.02

  Analisi
 
Input Output

Minuendo

Differenza

Sottraendo

 
  Diagramma a blocchi
 
  Pseudo codifica
 

Inizio

 

 

minuendo <- 0, sottraendo <- 0, differenza <- 0

Immetti minuendo
Immetti sottraendo
differenza <- minuendo - sottraendo
Visualizza differenza

Fine

 

  Codifica
Clicca qui
torna su

Esempio 03
Calcolare e stampare la media di tre numeri.

 

Svolgimento esempio n.03

  Analisi
 

Input

Output

primo numero

media

secondo numero

 

terzo numero

 
  Diagramma a blocchi
 
  Pseudo codifica
 

Inizio

 

 

 

primo <- 0, secondo <- 0, terzo <- 0, media <- 0

Immetti primo, secondo, terzo
media <- (primo + secondo + terzo) / 3
Visualizza media

Fine

 

  Codifica
Clicca qui
torna su

Promemoria

Java è un linguaggio object-oriented. L'idea che sta alla base della OOP è di rappresentare le entità reali o astratte, che determinano le dinamiche del problema risolto dal software, sotto forma di entità unitarie, dotate di specifiche d'uso e di funzionamento definite a priori, e chiamate oggetti. Le specifiche che definiscono le caratteristiche di queste unità (e in base alla quale le stesse vengono create o, in gergo, istanziate) sono chiamate classi.
Java non è un linguaggio object oriented "puro" (ad esempio, i valori dei tipi primitivi non sono oggetti).

Nel linguaggio Java, gli oggetti sono dotati di campi (definiti anche variabili di istanza o di esemplare) e di metodi. I metodi sono abitualmente usati per implementare agevolmente molti altri costrutti che alcuni altri linguaggi forniscono nativamente, come la gestione degli eventi (implementata attraverso i listeners) o delle proprietà (implementata tramite gli accessor methods e, più in generale, con oggetti JavaBeans).

In Java non esistono le funzioni: i blocchi di codice che "non appartengono a nessun oggetto" sono implementati come metodi statici di una certa classe (quindi sempre metodi).

In Java si pone un forte accento sulla distinzione tra interfaccia e implementazione di una classe o oggetto:

  • un'interfaccia è l'insieme delle specifiche pubbliche di cui gli utilizzatori di un certo oggetto possono servirsi,
  • l'implementazione è l'insieme delle strutture interne e delle istruzioni eseguibili che, nel complesso, adempiono a tali specifiche.
Trucco

Cominciare bene....
  • Leggi bene il testo del tuo esercizio
  • Prendi un pennarello verde ed evidenzia i dati in output cioè tutto ciò che il tuo programma dovrà produrre
  • Prendi un pennarello giallo ed evidenzia i dati in input cioè tutto ciò che il testo del'esercizio ti segnala come dato fornito dall'utente
  • Decidi come fare per ottenere il risultato richiesto cioè come elaborazione i dati in input per ottenere quelli in output
Esempio
 
Prese 2 bollette telefoniche, noti gli scatti indicati in ciascuna bolletta ed il costo di ciascuno scatto, si desidera conoscere la spesa media. - scatti 1^ bolletta
- scatti 2^ bolletta
- costo scatto
    spesa media <- (scatti 1^ bolletta * costo scatto +
scatti 2^ bolletta *
costo scatto) / 2
spesa media

Errori di I-O....



Esercizi da svolgere
Problemi elementari di calcolo

Esercizio 1.1.1
Nota l'età di uno studente si desidera visualizzarne l'anno di nascita.

Esercizio 1.1.2
Un meteorologo dilettante desidera sapere l'escursione termica di una giornata.

Esercizio 1.1.3
Presi a caso 3 studenti si desidera conoscerne l'altezza media.

Esercizio 1.1.4
Prese 3 bollette TIM si desidera conoscere la spesa media.

Esercizio 1.1.5
Noto l'anno di nascita di 2 studenti, se ne calcoli l'età media.

 
Torna all'inizio pagina
torna su