CALCOLATRICE BY ME

« Older   Newer »
  Share  
themetaldrummer
CAT_IMG Posted on 2/2/2011, 16:52     +1   -1




ecco il mio primo programma serio
grazie a xMasterx per l'aiuto
source:
#cs========================================================================
calcolatrice matematica by themetaldrummer v 1.0.0
rilasci prossimi:calcolatrice matematica fixata; calcolatrice geometrica
Inizio script
#ce========================================================================
#include <guiconstants.au3>
GUICreate("Calcolatrice by themetaldrummer",450,320,-1,-1)
$molt=GUICtrlCreateButton("MOLTIPLICAZIONE",25,20,170,55)
$div=GUICtrlCreateButton("DIVISIONE",250,20,170,55)
$add=GUICtrlCreateButton("ADDIZIONE",25,90,170,55)
$sott=GUICtrlCreateButton("SOTTRAZIONE",250,90,170,55)
$potenza=GUICtrlCreateButton("POTENZA",25,160,170,55)
$radice=GUICtrlCreateButton("RADICE QUADRATA",250,160,170,55)
$nint=GUICtrlCreateButton("CONTROLLA NUMERO INTERO",25,230,170,55)
$express=GUICtrlCreateButton("ESPRESSIONE",250,230,170,55)
GUISetState(@SW_SHOW)
While 1
$msg=GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
;=========================================================================
Case $molt
$n=InputBox("Inserisci n° fattori","Inserisci il numero dei fattori:");chiede il numero dei fattori
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i fattori
Next
$tot=1
For $x=0 To Ubound($array, 1)-1
$tot*=Number($array[$x]);fa l'operazione
Next
MsgBox(32, "Titolo", "Il risultato è "&$tot);trascrive il risultato in una MsgBox.
;=========================================================================
Case $div
$n=InputBox("Inserisci n° termini","Inserisci il numero dei termini:");chiede il numero dei termini
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i termini
Next
$tot=1
For $x=0 To Ubound($array, 1)-1
$tot/=Number($array[$x]);fa l'operazione
Next
MsgBox(32, "Risultato", "Il risultato è "&$tot);trascrive il risultato in una MsgBox.
;=========================================================================
Case $add
$n=InputBox("Inserisci n° termini","Inserisci il numero dei termini:");chiede il numero dei termini
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i termini
Next
$tot=0
For $x=0 To Ubound($array, 1)-1
$tot+=Number($array[$x]);fa l'operazione
Next
MsgBox(32, "Risultato", "Il risultato è "&$tot);trascrive il risultato in una MsgBox.
;=========================================================================
Case $sott
$n=InputBox("Inserisci n° termini","Inserisci il numero dei termini:");chiede il numero dei termini
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i termini
Next
$tot=0
For $x=0 To Ubound($array, 1)-1
$tot-=Number($array[$x]);fa l'operazione
Next
StringReplace($tot,"-"," ")
MsgBox(32, "Risultato", "Il risultato è "&$tot);trascrive il risultato in una MsgBox
;=========================================================================
Case $potenza
$num=InputBox("N° da elevare","Numero da elevare:")
$espo=InputBox("esponente","esponente:")
$res=$num ^ $espo
MsgBox(0,"n° elevato","il risultato è:" & $res)
;---
Case $radice
$num=Inputbox("Inserisci","Inserisci il numero da trovare la radice quadrata:")
$rad=Sqrt($num)
Msgbox(0,"Radice Quadrata","La radice quadrata del numero è:"& $rad)
;=========================================================================
Case $nint;cioè guarda se il numero è intero, poi ti chiede se lo vuoi arrotondare
$num = InputBox("Inserisci", "Inserisci il numero") ;Chiede il numero
$ris = StringIsInt($Num)
$si=StringReplace($ris,"1","si");trasforma il ritorno 1(positivo) in si
$no=StringReplace($ris,"0","no");trasforma il ritorno 0(negativo) in no
If $ris=1 Then;controlla se è intero, sennò ritorna no
MsgBox(0, "Ok", $si) ;La scrive in un Msgbox
Else
MsgBox(0,"Ok",$no)
If MsgBox(36,"arrotondare?","vuoi arrotondare il numero all' unità?")=6 Then
$arr=Round($num)
Msgbox(0,"n° arrotondato","Il numero arrotondato è:" & $arr)
EndIf
Endif
;=========================================================================
Case $express;ATTENTI QUI PERCHè è PIGNOLO, se si deve mettere sotto divisione "5+2-3" ad esempio, bisogna fare (5+2-3)/NUMERO
$exp=InputBox("inserisci termini espressione","inserisci termini espressione:");chiede termini
$res=Execute($exp);esegue l'espressione
MsgBox(32,"risultato","il risultato dell' espressione è:" & $res);dà il risultato


EndSwitch
WEnd

ci sono alcuni problemi con la divisione e la sottrazione che non so come mettere a posto, per la sottrazione ci posso riuscire ma per la divisone non so...


<div style="color: #00A4A4; font-weight: bold">FrontBack - Security Decompiler Team

SecureFile: QUI

Edited by FrontBack - 24/1/2013, 17:56
 
Top
FrontBack
CAT_IMG Posted on 2/2/2011, 17:16     +1   -1




funziona per metà...
l'addizione?
 
Top
themetaldrummer
CAT_IMG Posted on 2/2/2011, 17:26     +1   -1




ci credo ne ho incollata metà non so perchè.....
aspetta che rifaccio è
 
Top
xMasteRx
CAT_IMG Posted on 2/2/2011, 17:52     +1   -1




linea 40
CODICE
$array[$x]=InputBox("Titolo", "Inserisci un fattore ["&$x & "\" $n &"]");chiede i fattori

metti
CODICE
$array[$x]=InputBox("Titolo", "Inserisci un fattore ["&$x & "\"&$n &"]");chiede i fattori

bravo, però non sarebbe più facile creare una gui con i pulsante delle azioni [*, +, -, /] in modo che se li premi aggiunge al input principale la azione e poi quando premi per calcolare non fai ritornare il Execute() del valore letto dall'input? XD
 
Top
/dev/random
CAT_IMG Posted on 2/2/2011, 18:46     +1   -1




Sarebbe più figo e soprattutto più utile...
 
Top
The_Jokers
CAT_IMG Posted on 2/2/2011, 19:05     +1   -1




bello come primo programma
 
Top
themetaldrummer
CAT_IMG Posted on 2/2/2011, 19:13     +1   -1




ho completato il source, ora va bene, ma ci sono dei problemini con sottrazione e divisione, ho fatto il possibile ma non ne vogliono sapere....
SOURCE COMPLETO:
SPOILER (click to view)
#cs========================================================================
calcolatrice matematica by themetaldrummer v 1.0.0
rilasci prossimi:calcolatrice matematica fixata; calcolatrice geometrica
Inizio script
#ce========================================================================
#include <guiconstants.au3>
GUICreate("Calcolatrice by themetaldrummer",450,320,-1,-1)
$molt=GUICtrlCreateButton("MOLTIPLICAZIONE",25,20,170,55)
$div=GUICtrlCreateButton("DIVISIONE",250,20,170,55)
$add=GUICtrlCreateButton("ADDIZIONE",25,90,170,55)
$sott=GUICtrlCreateButton("SOTTRAZIONE",250,90,170,55)
$potenza=GUICtrlCreateButton("POTENZA",25,160,170,55)
$radice=GUICtrlCreateButton("RADICE QUADRATA",250,160,170,55)
$nint=GUICtrlCreateButton("CONTROLLA NUMERO INTERO",25,230,170,55)
$express=GUICtrlCreateButton("ESPRESSIONE",250,230,170,55)
GUISetState(@SW_SHOW)
While 1
$msg=GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
;=========================================================================
Case $molt
$n=InputBox("Inserisci n° fattori","Inserisci il numero dei fattori:");chiede il numero dei fattori
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i fattori
Next
$tot=1
For $x=0 To Ubound($array, 1)-1
$tot*=Number($array[$x]);fa l'operazione
Next
MsgBox(32, "Titolo", "Il risultato è "&$tot);trascrive il risultato in una MsgBox.
;=========================================================================
Case $div
$n=InputBox("Inserisci n° termini","Inserisci il numero dei termini:");chiede il numero dei termini
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i termini
Next
$tot=1
For $x=0 To Ubound($array, 1)-1
$tot/=Number($array[$x]);fa l'operazione
Next
MsgBox(32, "Risultato", "Il risultato è "&$tot);trascrive il risultato in una MsgBox.
;=========================================================================
Case $add
$n=InputBox("Inserisci n° termini","Inserisci il numero dei termini:");chiede il numero dei termini
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i termini
Next
$tot=0
For $x=0 To Ubound($array, 1)-1
$tot+=Number($array[$x]);fa l'operazione
Next
MsgBox(32, "Risultato", "Il risultato è "&$tot);trascrive il risultato in una MsgBox.
;=========================================================================
Case $sott
$n=InputBox("Inserisci n° termini","Inserisci il numero dei termini:");chiede il numero dei termini
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i termini
Next
$tot=0
For $x=0 To Ubound($array, 1)-1
$tot-=Number($array[$x]);fa l'operazione
Next
StringReplace($tot,"-"," ")
MsgBox(32, "Risultato", "Il risultato è "&$tot);trascrive il risultato in una MsgBox
;=========================================================================
Case $potenza
$num=InputBox("N° da elevare","Numero da elevare:")
$espo=InputBox("esponente","esponente:")
$res=$num ^ $espo
MsgBox(0,"n° elevato","il risultato è:" & $res)
;---
Case $radice
$num=Inputbox("Inserisci","Inserisci il numero da trovare la radice quadrata:")
$rad=Sqrt($num)
Msgbox(0,"Radice Quadrata","La radice quadrata del numero è:"& $rad)
;=========================================================================
Case $nint;cioè guarda se il numero è intero, poi ti chiede se lo vuoi arrotondare
$num = InputBox("Inserisci", "Inserisci il numero") ;Chiede il numero
$ris = StringIsInt($Num)
$si=StringReplace($ris,"1","si");trasforma il ritorno 1(positivo) in si
$no=StringReplace($ris,"0","no");trasforma il ritorno 0(negativo) in no
If $ris=1 Then;controlla se è intero, sennò ritorna no
MsgBox(0, "Ok", $si) ;La scrive in un Msgbox
Else
MsgBox(0,"Ok",$no)
If MsgBox(36,"arrotondare?","vuoi arrotondare il numero all' unità?")=6 Then
$arr=Round($num)
Msgbox(0,"n° arrotondato","Il numero arrotondato è:" & $arr)
EndIf
Endif
;=========================================================================
Case $express;ATTENTI QUI PERCHè è PIGNOLO, se si deve mettere sotto divisione "5+2-3" ad esempio, bisogna fare (5+2-3)/NUMERO
$exp=InputBox("inserisci termini espressione","inserisci termini espressione:");chiede termini
$res=Execute($exp);esegue l'espressione
MsgBox(32,"risultato","il risultato dell' espressione è:" & $res);dà il risultato


EndSwitch
WEnd

DOWNLOAD:VEDI PRIMO POST
che dite, lo faccio vedere alla mia prof? ;)
prossimi rialasci:
v 1.1:calcolatrice matematica fixata
v 2.0:calcolatrice matematica e geometrica(forse anche scientifica)

Edited by FrontBack - 2/2/2011, 20:16
 
Top
Cale92
CAT_IMG Posted on 2/2/2011, 19:23     +1   -1




il download non funziona e comunque modifica il primo posto così che tutti possano vedere la nuova versione e poi noi decompiler ricontrolliamo l'exe aggiungiamo il trusted link
 
Top
themetaldrummer
CAT_IMG Posted on 2/2/2011, 19:35     +1   -1




a me funziona il link...
 
Top
FrontBack
CAT_IMG Posted on 2/2/2011, 20:15     +1   -1




aggiornato
 
Top
themetaldrummer
CAT_IMG Posted on 2/2/2011, 20:37     +1   -1




grazie =)
qualcuno mi da una mano a fixare l'errore della sottrazione e della divisione?
 
Top
3ad
CAT_IMG Posted on 2/2/2011, 21:12     +1   -1




FIXED:

DIVISIONE
SPOILER (click to view)
CODICE
Case $div
$n=InputBox("Inserisci n° termini","Inserisci il numero dei termini:");chiede il numero dei termini
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i termini
Next
$tot=1
For $x=0 To Ubound($array, 1)-1
If $x=0 Then
$tot=$array[$x]
Else
$tot=$tot/$array[$x];fa l'operazione
EndIf
Next
MsgBox(32, "Risultato", "Il risultato è "&$tot);trascrive il risultato in una MsgBox.


SOTTRAZIONE
SPOILER (click to view)
CODICE
Case $sott
$n=InputBox("Inserisci n° termini","Inserisci il numero dei termini:");chiede il numero dei termini
Dim $array[$n];crea tot array quanto è il numero inserito nella input di $n
For $x=0 To Ubound($array, 1)-1;alza $x al numero degli array
$array[$x]=InputBox("Inserisci", "Inserisci un fattore ["&$x&"\"&$n&"]");chiede i termini
Next
$tot=0
For $x=0 To Ubound($array, 1)-1
If $x=0 Then
$tot=$array[$x]
Else
$tot=$tot-$array[$x];fa l'operazione
EndIf
Next
StringReplace($tot,"-"," ")
MsgBox(32, "Risultato", "Il risultato è "&$tot);trascrive il risultato in una MsgBox
 
Top
themetaldrummer
CAT_IMG Posted on 2/2/2011, 21:20     +1   -1




lol non ci avevo pensato... grazie 3ad =) =) =) =) :D :D :D :D ^^
 
Top
3ad
CAT_IMG Posted on 2/2/2011, 21:21     +1   -1




Di niente ;)
 
Top
13 replies since 2/2/2011, 16:52   247 views
  Share