LISTA 4
ZAD 3
napisac funkcje której wartośc obliczana jest
na podstawie wzoru:
x1-x2/x3 dla x3>5
(x1-x2)*x3 dla x3 <=5
Function Obliczenia(X1, X2 As Integer, X3 As Double) As Double
If X3 > 5 Then
Obliczenia = (X1 - X2) / X3
Else
Obliczenia = (X1 - X2) * X3
End If
End Function
ZADANIE 5
Napisac procedure która umozliwi wpisanie użytkownikowi dwóch liczb oraz
- jeśli obie liczby są + to wyświetli „liczby +”
-jeśli obie liczby są – to wyświetl „liczby –„
- inaczej wyświetl iloczyn liczb
Sub zad5()
Dim L1 As Double
Dim L2 As Double
L1 = InputBox("Podaj L1")
L2 = InputBox("Podaj L2")
If (L1 > 0 And L2 > 0) Then
MsgBox ("Liczby dodatnie")
ElseIf (L1 < 0 And L2 < 0) Then
MsgBox ("Liczby ujemne")
Else
MsgBox (L1 * L2)
End If
End Sub
LISTA 5
Zad 1 – Napisac funkcje Stypendium (srednie dochody, sr ocen ,
miejsce zam) której wartością jest kwota przyznanego stype
składającego się z sumy styp socj (a) i naukowego (B)
Function Stypendium(srednie_dochody As Double, srednia_ocen
As Double, miejsce_zamieszkania As String) As Integer
Dim styp_soc As Integer
Dim styp_nauk As Integer
If srednie_dochody < 501 Then styp_soc = 750
ElseIf srednie_dochody <= 1000 Then styp_soc = 500
ElseIf srednie_dochody <= 2000 Then styp_soc = 200
ElseIf srednie_dochody > 2000 Then styp_soc = 0
End If
If srednia_ocen > 4.75 Then styp_nauk = 950
ElseIf srednia_ocen >= 4.51 Then styp_nauk = 600
ElseIf srednia_ocen >= 4.26 Then styp_nauk = 400
ElseIf srednia_ocen >= 4.01 Then styp_nauk = 200
ElseIf srednia_ocen < 4.01 Then styp_nauk = 0
End If
Stypendium = styp_nauk + styp_soc
If styp_soc > 0 And Not miejsce_zamieszkania = "Wrocław" Then
Stypendium = Stypendium + 200
End If
End Function
Zad 3. Funkcja suma od do(lp,Lk) której wartoscia jest
suma kolejnych liczb całkowitych z przedzialu od Lp do Lk
Function SUMA_OD_DO(Lp, Lk As Integer) As Integer
Dim suma As Integer
Dim i As Integer
suma = 0
If Lp < Lk Then
For i = Lp To Lk
suma = suma + i
Next i
Else
For i = Lk To Lp
suma = suma + i
Next i
End If
SUMA_OD_DO = suma
End Function
Zad 5
napisac procedurę która wyliczy sume N liczb wprowadzonych przez uzyt. Wartosc N jest okreslona przy uruch procedury. Znodyfikowac tak żeby wyświetlane były sumy dla liczb + i liczb -
Sub zad5()
Dim N As Integer
Dim L As Double
Dim i As Integer
Dim suma_u As Double
Dim suma_n As Double
N = InputBox("ile liczb wprowadzisz?")
suma_u = 0
suma_n = 0
For i = 1 To N
L = InputBox("podaj liczbe")
If L < 0 Then
suma_u = suma_u + L
Else
suma_n = suma_n + L
End If
Next i
MsgBox ("suma_u=" & suma_u & ", a suma_n=" & suma_n)
End Sub
_________________________________________________________________________________________
LISTA 8
zad 1. Napisas funkcje IleCyfr(S), korej wartoscia jest liczba cyfr w napisie S.
Utworzyc funkcje IleDuzychLiter(s) zliczająca duże litery od a-z w napisie s
Function IleCyfr(s As String) As Integer
Dim i As Integer
Dim ile As Integer
ile = 0
For i = 1 To Len(s)
If (Mid(s, i, 1) >= "0" And Mid(s, i, 1) <= "9") Then
ile = ile + 1
End If
Next i
IleCyfr = ile
End Function
Function IleDuzychLiterr(ciag As String) As Integer
Dim ile As Integer
Dim i As Integer
ile = 0
napis = ""
For i = 1 To Len(ciag)
If (Asc(Mid(ciag, i, 1)) >= 65 And Asc(Mid(ciag, i, 1)) <= 90) Then
ile = ile + 1
End If
zad 2 – napisac funkcje napis bez spacji (s) której wartoscia jest napis
utworzony ze znaków składających się na napis s ale bez spacji
Function NapisBezSpacji(s As String) As String
Dim i As Integer
Dim napis2 As String
napis2 = ""
For i = 1 To Len(s)
If (Mid(s, i, 1) <> " ") Then
napis2 = napis2 + Mid(s, i, 1)
End If
Next i
NapisBezSpacji = napis2
End Function