Oppure

Loading
02/11/12 17:03
gabry97
innanzitutto ciao a tutti sono nuovo!ho 15 anni e ho conosciuto il pascal a scuola,mi sono appassionato e quindi sono andato avanti da autodidatta....ho scritto questo algoritmo per una semplice calcolatrice!funziona bene,cosa ne pensate?
aaa
02/11/12 17:21
Ottimo ... molto conciso, quasi inesistente ... :)
03/11/12 1:14
LittleHacker
Postato originariamente da nessuno:

Ottimo ... molto conciso, quasi inesistente ... :)


Quoto!! :rotfl:

gabry97: se dobbiamo dare un giudizio al tuo codice, devi postarlo!
Comunque, prima di postarlo assicurati di aver cliccato sul pulsante(a sinistra) "Code", e di mettere il codice tra i tag! Così è molto più leggibile e bello graficamente!

Con i tag code:

#include <iostream>
int x = 0;
void main(){
if(x==0){
cout << "Ciao" << endl;
}
return 0;
}


Senza i tag code:

#include <iostream>
void main(){
int x = 0;
if(x==0){
cout << "Ciao" << endl;
}
return 0;
}

Qual'è più bello e leggibile?
:k:

Edit:
Ops...non ho dichiarato la variabile x!!! :hail: :hail: La dichiaro subito!
Ultima modifica effettuata da LittleHacker 03/11/12 1:15
aaa
03/11/12 16:31
gabry97
lo so che per avere un giudizio devo postarlo :_doubt: l' avevo messo fra gli allegati ma evidentemente il formato non è supportato...
program calcolatricedue;
uses crt;
const
 dim=3;
var
 num:array[1..dim]of real;
 opera:string;
 scelta:char;
 indice:integer;
 label 1;
begin
  clrscr;
  writeln('programma calcolatrice');
  repeat
  write('scrivi l'' operazione che vuoi eseguire: ');
  readln(opera);
  if (opera='addizione')
   then
   begin
    for indice:=1 to 2 do
    begin
     write('inserisci il termine: ');
     readln(num[indice]);
    end;
    num[dim]:=(num[1])+(num[2]);
    writeln('ecco la somma tra i termini: ',num[dim]:2:1);
   end
   else
   if (opera='sottrazione')
    then
    begin
     for indice:=1 to 2 do
     begin
      write('inserisci il termine: ');
      readln(num[indice]);
     end;
     num[dim]:=(num[1])-(num[2]);
     writeln('ecco la differenza tra i termini: ',num[dim]:2:1);
    end
    else
    if (opera='moltiplicazione')
    then
    begin
     for indice:=1 to 2 do
     begin
      write('inserisci il termine: ');
      readln(num[indice]);
     end;
     num[dim]:=(num[1])*(num[2]);
     writeln('ecco il prodotto dei termini: ',num[dim]:2:1);
    end
    else
    begin
     1:
     write('inserisci il dividendo: ');
     readln(num[1]);
     write('inserisci il divisore: ');
     readln(num[2]);
     if num[2]=0
     then
     begin
      writeln('il divisore dev'' essere diverso da 0');
      goto 1;
     end;
     num[dim]:=(num[1])/(num[2]);
     writeln('ecco il risultato: ',num[dim]:2:1);
    end;
  write('vuoi eseguire un''altra operazione?(S/N): ');
  readln(scelta);
  until (scelta<>'S');
  writeln('termine elaborazione');
  readln;
end.
aaa
03/11/12 16:34
gabry97
solo per precisare non si tratta di delphi come ipotizzato dal sistema ma di dev-pascal :k:
aaa
03/11/12 17:07
LittleHacker
Secondo me è molto ben fatto! E' molto meglio delle mie prime applicazioni in Pascal! :)
aaa
04/11/12 17:46
gabry97
grazie mille! :D in proposito,volevo sapere se c'è un modo per inserire un' interfaccia grafica oppure per leggere direttamente l' operazione,ad esempio invece di far scrivere addizione,sottrazione ecc di leggere direttamente l' operazione esempio 5*3,4+2 ecc....
aaa
04/11/12 18:05
LittleHacker
Adesso non so se c'è una funzione già pronta, ma quello che devi fare è: prendi l'operazione scritta, togli i numeri e confronti il segno ottenuto con i segni!

cioè:
Scrivo in Java!
if(segno == "+"){
//fai l'addizione
}else if(segno == "-"){
//fai la sottrazione
}else if(segno == "*"){
//fai la moltiplicazione
}else if(segno == ":"){
//fai la divisione
}else{
//Errore di segno
}


:k:
aaa