Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 17.02.2016
Сообщений: 90
1

Реализовать в виде модуля набор подпрограмм для работы с обыкновенными дробями

28.04.2016, 15:45. Показов 1040. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите, пожалуйста, с решение задачи.
Задача. Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными дробями вида P/Q (P — целое, Q — натуральное): 1) сложение; 2) вычитание; 3) умножение; 4) деление;
Используя этот модуль, решить задачи:

1. Дан массив A — массив обыкновенных дробей. Найти сумму всех дробей, ответ представить в виде несократимой дроби. Вычислить среднее арифметическое всех дробей, ответ представить в виде несократимой дроби.

заранее спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.04.2016, 15:45
Ответы с готовыми решениями:

Модули. Реализовать в виде модуля набор подпрограмм для выполнения над обыкновенными дробями
Реализовать в виде модуля набор под программ для выполнения над обыкновенными дробями вида P/Q(где...

Реализовать в виде модуля набор подпрограмм для выполнения операций над обыкновенными дробями
Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными...

Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными дробями вида P/Q
Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными...

Реализовать в виде модуля набор подпрограмм для выполнения операций над дробями
Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными...

3
Заблокирован
28.04.2016, 17:05 2
Цитата Сообщение от Апострофф Посмотреть сообщение
Visual Basic
1
2
3
4
5
6
7
8
9
Function nok(ByVal a As Long, ByVal b As Long) As Long
    nok = (a * b) / nod(a, b)
End Function
Function nod(ByVal a As Long, ByVal b As Long) As Long
    While a > 0 And b > 0
      If a >= b Then a = a Mod b Else b = b Mod a
    Wend
    nod = a + b
End Function
- 80% решения вашей задачи.
0
0 / 0 / 0
Регистрация: 17.02.2016
Сообщений: 90
28.04.2016, 17:10  [ТС] 3
можно ли из этого что-то сделать?
Type Frac
P As Integer
Q As Long
End Type

Type natur
natur As Long
End Type

Function NodEvklid(A As natur, B As natur) As natur
While A <> B
If A > B Then
If A Mod B <> 0 Then A = A Mod B Else A = B
Else
If B Mod A <> 0 Then B = B Mod A Else B = A
NodEvklid = A
End If
End If
End If
End Function

Sub summa() 'Сумма дробей
'Знаменатель дроби
c.Q = (A.Q * B.Q) / NodEvklid(A.Q, B.Q)
'Числитель дроби
c.P = A.P * c.Q / A.Q + B.P * c.Q / B.Q
Sokr (c)
End Sub

Sub Sokr(ByRef m As natur, N As natur) 'Сокращение дроби
If A.P <> 0 Then
If A.P < 0 Then m = Abs(A.P)
Else: m = A.P 'Совмещение типов, т. к. A.P - LongInt
N = NodEvklid(m, A.Q)
A.P = A.P / N
A.Q = A.Q / N
End If
End Sub
0
Заблокирован
29.04.2016, 07:16 4
Цитата Сообщение от less11 Посмотреть сообщение
можно ли из этого что-то сделать?
Чушь какая-то (со слепой фотки набивали?)
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Option Explicit
 
Type PQ 'дробь
  p As Long 'числитель
  q As Long 'знаменатель
End Type
 
Function nok(ByVal a As Long, ByVal b As Long) As Long
    nok = (a * b) / nod(a, b)
End Function
 
Function nod(ByVal a As Long, ByVal b As Long) As Long
   While a > 0 And b > 0
     If a >= b Then a = a Mod b Else b = b Mod a
   Wend
   nod = a + b
End Function
 
Function sum(a As PQ, b As PQ) As PQ
'суммируем
sum.q = nok(a.q, b.q)
sum.p = a.p * sum.q \ a.q + b.p * sum.q \ b.q
'сокращаем
Dim nd As Long
nd = nod(sum.p, sum.q)
sum.p = sum.p \ nd
sum.q = sum.q \ nd
End Function
 
Sub test()
Dim a As PQ, b As PQ, c As PQ
a.p = 6: a.q = 360
b.p = 4: b.q = 540
c = sum(a, b)
End Sub
0
29.04.2016, 07:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.04.2016, 07:16
Помогаю со студенческими работами здесь

Реализовать в виде модуля набор подпрограмм для работы с графом
Определим граф как набор точек, некоторые из которых единены отрезками, подграф — как граф,...

Реализовать в виде модуля набор подпрограмм для работы с многочленами
Реализовать в виде модуля набор подпрограмм для работы с многочленами от одной переменной (1й...

Реализовать в виде модуля набор подпрограмм для работы с комплексными числами
Реализовать в виде модуля набор подпрограмм для выполне¬ния следующих операций над комплексными...

Реализовать в виде набора подпрограмм (процедур или функций) выполнение операций над обыкновенными дробями
Реализовать в виде набора подпрограмм (процедур или функций) выполнение операций над обыкновенными...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru