Sei sulla pagina 1di 4

'numero pari,dispari,primo,divisore Module Module1 Function input(ByRef n As Integer) Dim errore1 As Boolean = True Dim errore2 As Boolean = True

Do Try 'input iniziale n = InputBox("Inserire un numero intero maggiore di 0.") Do While (n <= 0) 'se il numero minore di zero MsgBox("Attenzione. Il numero deve essere maggiore di 0.", M sgBoxStyle.Exclamation) Do Try n = InputBox("Inserire ora il numero richiesto.") errore2 = False 'se non un numero o non accettabile Catch ex As InvalidCastException MsgBox("Inserire un numero intero maggiore di 0.", M sgBoxStyle.Critical) End Try Loop While (errore2 = True) Loop errore1 = False 'se non un numero o non accettabile Catch ex As InvalidCastException MsgBox("Inserire un numero intero maggiore di 0.", MsgBoxStyle.C ritical) End Try Loop While (n <= 0) Return n End Function Sub paridispari(ByVal n As Integer) If (n Mod 2 = 0) Then MsgBox("Il numero inserito pari.", MsgBoxStyle.Information) Else MsgBox("Il numero inserito dispari.", MsgBoxStyle.Information) End If End Sub Sub primo(ByVal n As Integer) 'dichiarazione variabili locali Dim divisore As Integer = 2 Dim I As Boolean = True 'verifico che il numero non sia divisibile per un altro numero al di fuo ri di 1 e s stesso Do If (n > 3) Then If (n Mod divisore = 0) Then I = False End If divisore = divisore + 1 End If Loop While (divisore <= Fix(n / 2)) If (I = True) Then MsgBox("Il numero inserito primo.", MsgBoxStyle.Information) Else MsgBox("Il numero inserito non primo.", MsgBoxStyle.Information) End If End Sub

Sub divisore(ByVal dividendo As Integer, ByVal divisore As Integer) If (dividendo Mod divisore = 0) Then MsgBox("Il primo numero inserito divisore del secondo.", MsgBoxStyle .Information) Else MsgBox("Il primo numero inserito non divisore del secondo.", MsgBoxS tyle.Information) End If End Sub Sub Main() 'dichiarazione variabili Dim num, num2 As Integer 'input del primo numero Call input(num) 'verifico se pari o dispari Call paridispari(num) 'verifico se primo Call primo(num) 'input del secondo numero MsgBox("Verr ora richiesto il numero con cui confrontare il primo.") Call input(num2) 'verifico se il primo numero inserito divisore del secondo Call divisore(num2, num) End Sub End Module

'Marchiori Matteo 2IA 1 apr 2013 'vocali in una parola,consonanti,parole palindrome,visualizzazione in verticale Module Module1 Sub verticale(ByVal p As String) 'dichiarazione variabili Dim num As Integer Dim c As String 'inizializzo num num = 1 'output Console.WriteLine("La parola scritta in verticale corrisponde a :" + vbC rLf + vbCrLf) Do c = Mid(p, num, 1) Console.Write(vbTab + vbTab + c + vbCrLf) num = num + 1 Loop Until (num > Len(p)) Console.ReadLine() End Sub Sub palindromo(ByVal p As String) 'dichiarazione variabili Dim caratteri, num1, num2 As Integer Dim c1, c2 As String Dim pali As Boolean = True 'inizializzo caratteri,num1,num2,p p = LCase(p) p = Replace(p, " ", "") caratteri = Len(p) num1 = 1 num2 = caratteri 'fase di confronto

Do c1 = Mid(p, num1, 1) c2 = Mid(p, num2, 1) If (c1 <> c2) Then pali = False End If num1 = num1 + 1 num2 = num2 - 1 Loop While (num1 < num2) If (pali = True) Then MsgBox("La parola inserita palindroma.", MsgBoxStyle.Information) Else MsgBox("La parola inserita non palindroma.", MsgBoxStyle.Information ) End If End Sub Sub consonanti(ByVal p As String) 'dichiarazione variabili Dim c, conso As Integer 'inizializzo c e conso c = 1 conso = 0 p = LCase(p) Do If (Mid(p, c, 1) = "q") Or (Mid(p, c, 1) = "w") Or (Mid(p, c, 1) = " r") Or (Mid(p, c, 1) = "t") Or (Mid(p, c, 1) = "y") Or (Mid(p, c, 1) = "p") Or ( Mid(p, c, 1) = "s") Or (Mid(p, c, 1) = "d") Or (Mid(p, c, 1) = "f") Or (Mid(p, c , 1) = "g") Or (Mid(p, c, 1) = "h") Or (Mid(p, c, 1) = "j") Or (Mid(p, c, 1) = " k") Or (Mid(p, c, 1) = "l") Or (Mid(p, c, 1) = "z") Or (Mid(p, c, 1) = "x") Or ( Mid(p, c, 1) = "c") Or (Mid(p, c, 1) = "v") Or (Mid(p, c, 1) = "b") Or (Mid(p, c , 1) = "n") Or (Mid(p, c, 1) = "m") Then conso = conso + 1 End If c = c + 1 Loop Until (c > Len(p)) MsgBox("La parola inserita contiene " + Str(conso) + " consonanti.", Msg BoxStyle.Information) End Sub Sub vocali(ByVal p As String) 'dichiarazione variabili Dim c, v As Integer 'inizializzazione di c e di v c = 1 v = 0 p = LCase(p) Do If (Mid(p, c, 1) = "a") Or (Mid(p, c, 1) = "e") Or (Mid(p, c, 1) = " i") Or (Mid(p, c, 1) = "o") Or (Mid(p, c, 1) = "u") Or (Mid(p, c, 1) = "") Or (Mi d(p, c, 1) = "") Or (Mid(p, c, 1) = "") Or (Mid(p, c, 1) = "") Or (Mid(p, c, 1) = "" ) Or (Mid(p, c, 1) = "") Then v = v + 1 End If c = c + 1 Loop Until (c > Len(p)) MsgBox("La parola inserita contiene " + Str(v) + " vocali.", MsgBoxStyle .Information) End Sub Sub Main() 'dichiarazione variabili

Dim parola As String 'input parola = InputBox("Inserire una parola." + vbCrLf + "La parola potr conte nere,oltre a caratteri minuscoli, anche caratteri maiuscoli,spazi,numeri (nel ca so la parola sia una sigla) e caratteri speciali.") 'conto le vocali Call vocali(parola) 'conto le consonanti Call consonanti(parola) 'controllo se la parola palindroma Call palindromo(parola) 'trascrizione in verticale Call verticale(parola) End Sub End Module