Предмет: Информатика, автор: dashabog0015

Создать программу вычисления функции S для 5 пар чисел x и y. VBA

Приложения:

Аноним: Странно. Быть знакомым с С/С++/С# и не знать Бейсик... какое-то однобокое образование
CSharper: Я видел синтаксис Бейсика. Он ужасен...
Аноним: По мне, так синтаксис С/С++ куда ужаснее
Аноним: Собственно, скоро я выложу код, посмотрите
CSharper: Ну С/C++ хардкорные языки, не спорю. Зато C# отличная штука, напичканная синтаксическим сахаром. Никаких тебе указателей (хотя можно врубить unsafe mode)
Аноним: Нет, отличная штука в качестве первого языка - не C#, а PascalABC.NET. Это C#, обернутый в паскалевский синтаксис и щедро сдобренный сахарком на основе Haskell и Python (чтобы они нос не драли).
Аноним: A VBA - это язык, у которого интерфейс - листы Excel. И это прекрасный интеллектуальный интерфейс!
Аноним: Вон, одна команда a = Range("A1:B5") считала данные и листа и превратила их в двумерный массив.
Аноним: Обратно тоже работает.
Аноним: Можно прямо из VBA сортировки делать, листы оформлять, графики строить... вывалить текст в документ Word и там сформатировать программно...

Ответы

Автор ответа: Аноним
1
Sub MyTest()
    Dim a As Variant, i As Integer
    a = Range("A1:B5")
    For i = 1 To 5
        Cells(i, 3) = S(a(i, 1), a(i, 2))
    Next i
End Sub

Function S(ByVal x As Double, ByVal y As Double) As Double
    Dim i As Integer
    If x < y Then
        S = 0
        For i = 1 To 20
            S = S + x ^ i * y ^ (i + 1)
        Next i
    ElseIf x > y Then S = (x * y) ^ 2
    Else: S = x * x + y * y
    End If
End Function
x - по колонке A1:A5, y - по колонке B1:B5, результат в C1:C5

Приложения:

dashabog0015: а по-другому нельзя?примерно так
Sub Zad2()
Dim x As Single, y As Single, i As Integer, n As Integer
Dim s As Single

n = 0
s = 0

y = 5
For x = 1 To 5
If x < y Then
For i = 1 To 20
s = s + (x ^ i) * (y ^ (i + 1))
Cells(9 + n, 3) = s
Next i
End If

If x > y Then
s = (x ^ 2) * (y ^ 2)
Cells(10 + n, 3) = s
End If

If x = y Then
s = (x ^ 2) + (y ^ 2)
Cells(11 + n, 3) = s
End If

y = y - 1
Next x
n = n + 1
Cells(8 + n, 2) = y
Cells(8 + n, 1) = x
Cells(8, 1) = "x="
Cells(8, 2) = "y="
Cells(8, 3) = "s="
End Sub
Аноним: Да можно по-разному, но почему я должен вдумываться в Ваш код и искать там ошибки, дав свой?
dashabog0015: Я не прошу искать ошибки. Мне нужен код такой, как у меня, но правильный.
Аноним: Тогда надо было его привести в вопросе и попросить исправить
Аноним: Либо, написать по его образцу. А так, извините, получить решение, а потом начинать вместо "спасибо" свои хотелки демонстрировать - это некрасиво (я выбрал слово помягче).
Интересные вопросы
Предмет: Английский язык, автор: buinst
Необходим перевод небольшого эссе-рассуждения на английский язык.
.
.
.
.
.
"Подавляющее большинство людей заняты работой или учебой. Будничные дела отнимают много времени и энергии, из-за чего мы сильно устаем. Высока вероятность элементарно «сгореть» на работе. Так что, каждому человеку, будь то ребенок или взрослый, необходимо немного отдохнуть после рабочих дней.. Каждый волен проводить свободное время так, как ему вздумается. Иногда полезно посидеть в тишине с закрытыми глазами, отключив телефон, в одиночестве побродить по парку или погулять у реки. Или наоборот, провести время в шумной компании, посетить кино, кафе, музей. Многие люди посвящают все свое свободное время любимым занятиям – хобби.

Свободное время должно приносить радость и удовольствие. Занимаясь постоянно скучными и неинтересными делами нельзя чувствовать настоящий вкус жизни, а она же такая прекрасная, веселая, интересная! Сейчас, когда мы на дистанционном обучении, мы имеем чрезвычайно много свободного времени для удовлетворения.

Что касается меня свое свободное время я могу проводить по-разному. Иногда для меня лучший вариант – это остаться дома и почитать интересную книгу, посмотреть сериал, поиграть в комьютерную игру. Но иногда мне хочется провести время с друзьями, прогуливаясь по парку. Больше всего видов отдыха я нахожу летом: поход в лес, катание на велосипеде, пикник на природе, вылазка на пляж.

Свободное время – это не прихоть и вовсе не признак лени, это жизненно важная необходимость. Если человек не отдыхает, он превращается в трудоголика, у него развивается депрессия, а из-за физического напряжения появляются болезни. Хронически уставший человек становится раздражительным, срывается на окружающих, часто конфликтует. Со временем он просто не может отдыхать, не умеет, что еще больше усугубляет ситуацию. Поэтому так важно выделять себе хоть немного свободного от разных дел времени."



Упрощения приветствуются, погрешности не критичны. Заранее спасибо
Предмет: Литература, автор: sashar28