Form questionario scuola – Classe 5ª E

Realizzare un form per l’inserimento di un certo numero di allievi in una piccola scuola; inserire cognome, nome, sesso, data di nascita, classe, sezione (la classe e la sezione devono essere selezionate mediante due diverse caselle combinate) ECDL Si/No (con un check box). I dati devono essere memorizzati in tanti array cognome, nome, sesso, ect. Deve essere anche possibile la visualizzazione dell’intero elenco e la sua completa cancellazione.

Progetto NetBeans EE: Form questionario scuola.zip

Come visualizzare LeJOS NXT/PC Project nel menu di Eclipse

Installazione di leJOS su Eclipse: http://www.lejos.org/nxt/nxj/tutorial/Preliminaries/UsingEclipse.htm

leJOS Project 3 leJOS Project 4

Nelle ultime versioni di Eclipse, dopo l’installazione del plugin leJOS NXJ, non vengono più attivate automaticamente le voci LeJOS NXT ProjectLeJOS PC Project sia nel menu File – New sia nell’icona New della toolbar. Per visualizzarle procedere come segue.

Selezionare il menu Window – Perspective – Customize Perspective…

leJOS Project 1

Selezionare la linguetta Menu Visibility ed espandere le voci File – New. Inserire il segni di spunta sulle voci LeJOS NXT ProjectLeJOS PC Project e confermare con OK.

leJOS Project 2

Esercizi sulle onde per la 4E

  1. Una corda di lunghezza 45 cm è sottoposta ad una tensione di 85 N. Sapendo che è in grado di oscillare secondo le armoniche 3 e 4 aventi rispettivamente frequenze 330 e 440 Hz, calcola: a) la frequenza e la lunghezza d’onda dell’armonica fondamentale; b) la velocità di propagazione dell’onda; c) la densità lineare della corda.
  2. Un’onda stazionaria di ampiezza 0,7 cm è presente su una corda di lunghezza 80 cm; si osserva che presenta altri 3 nodi oltre ai 2 presenti agli estremi. a) Determina di quale armonica si tratta. b) Sapendo che la velocità di propagazione nella corda è pari a 1200 m/s, calcola la frequenza dell’armonica. c) Scrivi la funzione matematica y(x,t) che rappresenta l’onda stazionaria.

Simulazione di verifica di laboratorio di Informatica (3E)

  1. Creare la classe Rettangolo avente i seguenti 4 attributi privati: x, y, larghezza, altezza che rappresentano le coordinate dell’angolo in basso a sinistra del rettangolo, la larghezza e l’altezza di tipo virgola mobile a doppia precisione.
  2. Creare 3 tipi di costruttori: il primo senza parametri che assegna i valori predefiniti 0, 0, 0, 0; il secondo con 2 parametri larghezza e altezza, x e y hanno valori predefiniti 0 e 0; il terzo con tutti i parametri.
  3. Creare i getter e i setter per tutti gli attributi controllando che larghezza e altezza non siano negativi; non ci sono limitazioni su x e y.
  4. Creare i metodi standard toString, equals e clone.
  5. Creare Scatola sottoclasse di Rettangolo avente ulteriori attributi: vuoto di tipo logico, colore di tipo stringa.
  6. Creare 3 tipi di costruttori: il primo senza parametri che assegna i valori predefiniti 0, 0, 0, 0, false, “nero”; il secondo con 2 parametri larghezza e altezza, gli altri hanno valori predefiniti 0 e 0, false, “nero”; il terzo con tutti i parametri.
  7. Creare i getter e i setter per i nuovi attributi controllando che colore rientri in uno dei possibili colori definiti come costanti all’interno della classe; BLACK = “nero”, WHITE = “bianco”, YELLOW = “giallo”, RED = “rosso”, CYAN = “azzurro”.
  8. Riscrivere i metodi toString, equals e clone.
  9. Aggiungere alla classe Rettangolo i metodi:

public boolean contiene(double xP, double yP)
che restituisce true nel caso in cui il rettangolo corrente contiene il punto di coordinate xP e yP

public boolean contiene(Rettangolo r)
che restituisce true nel caso in cui il rettangolo corrente contiene interamente il rettangolo r passato come parametro

  1. Creare la classe Main che crea r1 = Rettangolo(1.0, 2.0, 5.5, 3.2), r2 = Rettangolo(1.0, 2.0); li clona entrambi in r3 ed r4; modifica le dimensioni di r4 in larghezza = 2.0 e larghezza = 1.0; crea s = Scatola(…) con le stesse misure di r1, non vuota e gialla; controllare se il rettangolo r4 è contenuto interamente in r1.

Parziale soluzione: Rettangoli.zip

Programmi NXT per l’orientamento (classe 4E)

  • ThreadUS.nxj
    Bip-Bip più o meno veloce in relazione alla distanza dell’ostacolo dal sensore US (porta S1).
  • ObjectDetect.nxj
    Emette un suono di frequenza variabile in relazione alla distanza dell’ostacolo dal sensore US (porta S1); se la distanza è inferiore a 30 cm gira di 90° e riparte.
  • Luce.nxj
    Rappresenta graficamente l’intensità della luce letta dal sensore (porta S2).
  • StopMuro.nxj
    Bottone ENTER ferma/parte, LEFT/RIGHT svolta a sinistra/destra, sensore di pressione premuto (porta S1) ferma i motori.
  • SonicTest.nxj
    Esegue il test del sensore di suono (porta S1) mostrando informazioni.
  • Suono.nxj
    Emette una sequenza di suoni e prova i 3 strumenti: FLUTE, PIANO, XYLOPHONE.
  • SensoreSuono.nxj
    Con un rumore forte (battito mani) parte o si ferma (porta S1)

Array di oggetti per la 3E

class Allievo

public class Allievo {

	private String cognome, nome;
	private char sesso;
	private int nascita;

	public Allievo(String cognome, String nome, char sesso, int nascita) {
		setCognome(cognome);
		setNome(nome);
		setSesso(sesso);
		setNascita(nascita);
	}

	public String getCognome() {
		return cognome;
	}

	public void setCognome(String cognome) {
		this.cognome = cognome;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public char getSesso() {
		return sesso;
	}

	public void setSesso(char sesso) {
		if (sesso == 'm' || sesso == 'M' || sesso == 'f' || sesso == 'F')
			this.sesso = sesso;
	}

	public int getNascita() {
		return nascita;
	}

	public void setNascita(int nascita) {
		this.nascita = nascita;
	}

	public String toString() {
		return "Allievo: cognome=" + getCognome() + ", nome=" + getNome()
				+ ", sesso=" + getSesso() + ", nascita=" + getNascita();
	}

}

class Main

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

	public static void main(String[] args) {
		Allievo[] classe3E = new Allievo[30];

		InputStreamReader input = new InputStreamReader(System.in);
		BufferedReader tastiera = new BufferedReader(input);

		System.out.println("Inserisci il numero di allievi:");
		int nMax = 0;
		try {
			nMax = Integer.parseInt(tastiera.readLine());
		} catch (NumberFormatException | IOException e) {
		}

		for (int i = 0; i < nMax; i++) {
			System.out.println("Allevo " + i
					+ ": Cognome, Nome, Sesso, Nascita");
			try {
				classe3E[i] = new Allievo(tastiera.readLine(),
						tastiera.readLine(), tastiera.readLine().charAt(0),
						Integer.parseInt(tastiera.readLine()));
			} catch (NumberFormatException | IOException e) {
			}
		}

		System.out.println("Elenco degli allievi");
		for (int i = 0; i < nMax; i++) {
			System.out.println(classe3E[i].toString());
		}
	}

}