Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Министерство образования и науки РФ



 

Министерство образования и науки РФ

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

 

Камская государственная инженерно-экономическая академия

“Массивы на VBA”

 

 

Выполнил: студент гр.№3101

Павлова Полина

Проверила:Ахмадуллина Р.М

 

Г.Набережные Челны

 

 

Задание 1.

Блок-схема

       
 
 
   

 

 


       
 
 
   

 

 


да нет

       
   
 

 

 


 

 


Псевдокод.

Началоmassiv (n, a/ Q)

i,n натуральное

Q вещественное

S вещественное

а() массив вещественное

 

ввод n

цикл для i=1, n

ввод a(i)

 

всецикл

S=0

 

если a(1)>=0 то

циклдля i=1, n

S=S+a(i)

Все цикл

Q=S/n

иначе

Q=a(1)^2+a(n)^2

Все если

вывод Q

 

Конецmassiv.

 

 

 

A

B

C

D

E

F

G

H

 

 

 

 

 

 

 

 

4,285714

   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

Sub prm()

Dim i As Byte

Dim n As Byte

Dim S As Single

Dim a() As Single

Dim Q As Single

Sheets("Лист1").Activate

Range("A1").CurrentRegion.Select

n = Selection.Rows.Count

ReDim a(n)

For i = 1 To n

a(i) = Range("A1").Cells(i, 1).Value

Next i

S = 0

If a(1) >= 0 Then

For i = 1 To n

S = S + a(i)

Next i

Q = S / n

Else

Q = a(1) ^ 2 + a(n) ^ 2

End If

Range("C1:C30").Clear

For i = 1 To n

Range("C1").Cells(i, 1).Value = a(i)

Next i

Range("F1").Value = S

Range("H1").Value = Q

End Sub

 

 

Процедуры


Sub Massiv()

Dim i As Byte

Dim n As Byte

Dim a() As Single

Dim S As Single

Dim Q As Single

Sheets("Лист1").Activate

Range("A1").CurrentRegion.Select

n = Selection.Rows.Count

ReDim a(n)

Call vvod(a, n)

Range("B1:B30").Clear

'Нахождение summa

MsgBox ("Q=") & summa(a(), n)

'сумма

Call uvelichenie(a, n)

End Sub

Sub vvod(a() As Single, n As Byte)

For i = 1 To n

a(i) = Range("A1").Cells(i, 1).Value

Next i

S = 0

End Sub

Sub vivod(adr As String, a() As Single, n As Byte)

For i = 1 To n

a(i) = Range(adr).Cells(i, 1).Value

Next i

End Sub

Function summa(a() As Single, n As Byte) As Single

Dim Q As Single

If a(1) >= o Then

For i = 1 To n

S = S + a(i)

Next i

Q = S / n

Range("G1").Value = Q

End If

summa = Q

End Function

Sub uvelichenie(a() As Single, n As Byte)

Dim Q As Single

For i = 1 To n

If a(1) <= 0 Then

Q = a(1) ^ 2 + a(n) ^ 2

End If

Next i

Call vivod("C1", a, n)

End Sub


 

A

B

C

D

E

F

G

H

 

 

 

 

 

 

 

 

4,285714

   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

   

 



 

 

 

 

 

 

   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

 

Министерство образования и науки РФ

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

 

Камская государственная инженерно-экономическая академия

“Строки на VBA”

 

 

Выполнил: студент гр.№3101

Павлова Полина

Проверила:Ахмадуллина Р.М

 

Г.Набережные Челны

 

Выяснить верно ли,что в дан.строке есть подряд идущие три буквы «л»,большие или маленькие.Если это так,все такие тройки удалить.

Sub pr_1()

Dim s As String

Dim q As String

Dim k As Byte

Dim i As Byte

s = InputBox("ввод ллл")

q = InputBox("ввод строки")

k = 0

For i = 1 To Len(q)-2

If Mid(s, 1, 3) = Mid(q, i, 3) Then k = k + 1

Next i

otvet = otvet & Mid(s, 1, 3) & " - " & k & " " & vbCrLf

q = Replace(q, Mid(s, 1, 3), "")

MsgBox otvet

MsgBox q

End Sub

 


Дата добавления: 2015-11-04; просмотров: 25 | Нарушение авторских прав




<== предыдущая лекция | следующая лекция ==>
(по данным Администрации Великого Новгорода. Список граждан, имеющих право на получение земельных участков) | -1

mybiblioteka.su - 2015-2024 год. (0.039 сек.)