powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите написать код на basic
50 сообщений из 50, показаны все 2 страниц
Помогите написать код на basic
    #37711326
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. Пожалуйста помогите написать год на basic-е или откуда можно найти конвертер из Pascal в Basic ?

1. Найти значение функции для любого аргумента
y=ctg(2x+x*x) если a>2
y=корень(а+4) если -2<=a<=2
y=Ln(4+a) в ост. случаях

2. Значения функции y=x*x*x+2 представить в виде таблиц в отрезке [0; 150] шагом 0.03

3.Найти среднеарифметическое значение следующих выражений:
a=tg(2x+z*z) b=sum(i=0, N) (4x+1)^2


Спасибо
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711350
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну а в чем проблема?
Где код на Паскале?
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711355
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Proну а в чем проблема?
Где код на Паскале?

Предположим:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Program myprog;

var y, a, x:real
Begin
read (a, x);
if a>2 then y:=ctg(2x+x*x)
else if (a<=2)and (а>=-2) then y:=sqrt(а+4)
  else y:=Ln(4+a);
write(y);
end.
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711397
TpaBka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fine,

Ну тогда так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
a = InputBox("Введите a", "Ввод параметра", 0)
x = InputBox("Введите x", "Ввод аргумента", 0)
If a > 2 Then
y = (2 * x + x ^ 2)
ElseIf a >= -2 And a <= 2 Then
y = Sqr(а + 4)
Else
y = Log(4 + a) / Log(10#)
End If
MsgBox "y=" & y
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711411
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо TpaBka,
Но функции InputBox и MsgBox видимо относятся к Visual Basic....
Еще выражение
Код: vbnet
1.
 y = Log(4 + a) / Log(10#)   

не понял :(
Может просто
Код: vbnet
1.
y = Log(4 + a)

?
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711415
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FineНо функции InputBox и MsgBox видимо относятся к Visual Basic....а надо просто на Basic? тогда Input и Print
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711421
TpaBka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В задаче просят найти ведь натуральный логарифм?
тогда:
Код: vbnet
1.
Ln(x)=Log(x) / Log(10#)  

InputBox - окно в котором пользавтель с клавиатуры вводит значения
MsgBox - результат выводится в виде обычного сообщения Windows
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711426
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,
Окончательный код правильно ?

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Print ("Введите a")
Input (a)

Print ("Введите x")
Input (x)

If a > 2 Then
y = (2 * x + x ^ 2)
ElseIf a >= -2 And a <= 2 Then
y = Sqr(а + 4)
Else
y = Log(4 + a)
End If
Print (y)
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711430
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711432
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,
На счет логарифма я понял: должен быть Ln(x)=Log(x) / Log(10#)
Где еще ошибка ?
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711433
TpaBka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я никогда не работал с логарифмами, и уже забыл о них, так что могу и ошибаться на счет
Y = Log(4 + a) / Log(10#)
Пусть меня поправят, если я ошибся
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711437
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FineОкончательный код правильно ?у меня под рукой нет обычного бейсивка, посмотрите самостоятельно хелп по этим командам
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711442
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
Input (a)


здесь нет никакого присвоения переменной
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711462
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One
Код: vbnet
1.
Input (a)


здесь нет никакого присвоения переменной
Присвоение не надо здесь, a - аргумент, вводит пользователь ...
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711470
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может вы хотели так:

Код: vbnet
1.
2.
3.
Dim a as Integer
a = 0
a = VBA.InputBox("Введите значение a","Ввод значения",a)
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711481
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One , ему же (студенту) надо обычный бэйсик. Что-то типа gwbasic или как бы не qbasic ..
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711485
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

должен был написать просто
Код: vbnet
1.
input a
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711509
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndreTM Konst_One , ему же (студенту) надо обычный бэйсик. Что-то типа gwbasic или как бы не qbasic ..

а, понятно.
то-то, я смотрю, странные какие-то операторы =)
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711543
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть Ln (4+a)= Log(4 + a) / Log(exp(1)) ?????
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711569
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fine,

Все товарищи, нашел компилятор, на самом деле
Ln (4+a)= Log(4 + a) / Log(exp(1)) или
Ln (4+a)= Log(4 + a) / Log(2.71))

Спасибо всем
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711609
TpaBka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FineFine,
Ln (4+a)= Log(4 + a) / Log(exp(1)) или

Согласен
Википедия помогла вспомнить про Ln
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711848
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2-ая моя задача:
Значения функции y=x*x*x+2 представить в виде таблиц в отрезке [0; 150] шагом 0.03

Код: vbnet
1.
2.
3.
4.
5.
x=0
for x=0 to 150 step 0.03
y=x^3+2
print "x="; x; " y="; y
next x



Все нормально работает, но начиная с какого то шага (x=0.54) для следующего х-а вместо значения x=0.57 появляется какое то значение
Вот результаты
Код: vbnet
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.
x= 0  y= 2
x= .03  y= 2.000027
x= .06  y= 2.000216
x= .09  y= 2.000729
x= .12  y= 2.001728
x= .15  y= 2.003375
x= .18  y= 2.005832
x= .21  y= 2.009261
x= .24  y= 2.013824
x= .27  y= 2.019683
x= .3  y= 2.027
x= .33  y= 2.035937
x= .36  y= 2.046656
x= .39  y= 2.059319
x= .42  y= 2.074088
x= .45  y= 2.091125
x= .48  y= 2.110592
x= .51  y= 2.132651
x= .54  y= 2.157464
x= .5699999  y= 2.185193
x= .5999999  y= 2.216
x= .6299999  y= 2.250047
x= .6599998  y= 2.287496

Press any key to continue
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711897
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
x у вас какого типа?
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711950
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Onex у вас какого типа?
не объявляю. сначала попробовал как double но тот же самый результат
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711951
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
double как раз и не надо. вам нужен точный тип, а не с плавающей точкой. или юзайте округление до требуемого знака
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711992
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

все типы попробовал. остается вариант округления, round вроде не работает, может не правильно вызываю...
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37711995
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я не знаю, что у вас за диалект и такого компилятора у меня нет, но обычно юзают тип DECIMAL(?,?)
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37712040
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

на счет decimal:
Type Not Defined
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37712049
TpaBka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fine,

если есть то - Currency
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37712067
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TpaBka,

нет, тоже нет
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37712186
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Fine
> y=ctg(2x+x*x) если a>2

В уравнении параметр/переменная 'a' отсутствует.


> y=Ln(4+a) в ост. случаях

То есть, при a < -2.
При а ==> -4 получим минус бесконечность,
при a <= -4 функция не определена на множестве действительных чисел.

Может всё не так, как на самом деле? (с)
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37712218
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скукотища,

Спасибо. Я тоже все это заметил, но задача выглядит именно так
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37712302
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FineKonst_One,

все типы попробовал. остается вариант округления, round вроде не работает, может не правильно вызываю...
А если так ?

Код: vbnet
1.
2.
3.
4.
5.
6.
Dim x As Long, y As Double

For x = 0 to 15000 step 3
  y = x * x * x / 1e6
  Print "x= "; x / 100, "y= "; y
Next x
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37712793
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скукотищаFineKonst_One,

все типы попробовал. остается вариант округления, round вроде не работает, может не правильно вызываю...
А если так ?

Код: vbnet
1.
2.
3.
4.
5.
6.
Dim x As Long, y As Double

For x = 0 to 15000 step 3
  y = x * x * x / 1e6
  Print "x= "; x / 100, "y= "; y
Next x


Выдается "Overflow"
И еще такие фокусы думаю не желательно, трудно сказать как к этому будет относится преподаватель.
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713121
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пытаюсь решить след. задачу:
3.Найти среднеарифметическое значение следующих выражений:
a=tg(2x+z*z) b=sum(i=0, N) (4x+1)^2

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
INPUT "Input x"; x
INPUT "Input z"; z
INPUT "Input N"; N

a = TAN(2 * x + z ^ 2)
b = 0
FOR i = 1 TO N STEP 1
b = b + (4 * x + 1) ^ 2
NEXT i
PRINT (a + b) / 2



Ввожу данные x=2, z=2, N=2
Виводит 77.60014

А при помощи калькулятора получается 81.14054

Где моя ошибка ?
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713704
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Fine
> Где моя ошибка ?

Согласно условия sum(i=0, а ты начинаешь с:
> FOR i = 1

И этим теряешь одну итерацию.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713766
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос> Автор: Fine
> Где моя ошибка ?

Согласно условия sum(i=0, а ты начинаешь с:
> FOR i = 1

И этим теряешь одну итерацию.


Сорри, на самом деле i начинается от 1
a=tg(2x+z*z) b=sum(i=1, N) (4x+1)^2
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713773
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
b=sum(i=1, N) (4x+1)^2

вы уверены , что правильно интерпретируете формулу?
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713821
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneb=sum(i=1, N) (4x+1)^2

вы уверены , что правильно интерпретируете формулу?
Да да, именно так и написано у меня. Согласен так как i не участвует, можно без цикла написать:
b=N*(4x+1)^2

Но пример у меня такой.
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713837
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня на калькуляторе при ваших исходных данных и формулах совсем другое число
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713875
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
sum(i=1, N) = i*(N+1)/2
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713886
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
N*(N+1)/2



В вашем случае , когда N = 2: sum(i=1,N=2) = (2*(2+1))/2 = 3
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713904
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One
Код: vbnet
1.
N*(N+1)/2



В вашем случае , когда N = 2: sum(i=1,N=2) = (2*(2+1))/2 = 3
Почему то я по другому считаю:
b=2*(4x+1)^2=2*(4*2+1)^2=2*81=162
a = TAN(2 * x + z ^ 2)=Tan (2*2+2^2)=tan(8)=0.14 (калькулятор)
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713914
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поэтому у вас и неправильно.

в математике , обозначение sum(i=1, N) - это сумма ряда целых чисел до N-большого числа.
и вычисляется оно по простой формуле:

sum(i=1,N) = N*(N+1)/2
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713930
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneпоэтому у вас и неправильно.

в математике , обозначение sum(i=1, N) - это сумма ряда целых чисел до N-большого числа.
и вычисляется оно по простой формуле:

sum(i=1,N) = N*(N+1)/2

Я согласен, сумма 1,2,3,4.....N чисел это N*(N+1)/2.
Но sum(i=1,N) я имел ввиду изменения индекса i.
Представьте там знак суммирования, внизу i=0, на верху N и в скобках выражение (4x+1)^2
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713977
AndreyMp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПредставьте там знак суммирования, внизу i=0, на верху N и в скобках выражение (4x+1)^2 Тогда у Вас вообще непонятно что получается. Либо сумма N одинаковых чисел, либо x=i ?
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713985
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Представьте сумма одинаковых чисел.
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37713993
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
b получаю правильно, проблема с ТАН()-ом !
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37714024
AndreyMp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая проблема? Может в единицах измерения?
...
Рейтинг: 0 / 0
Помогите написать код на basic
    #37714025
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ладно все в порядке, всем спасибо
...
Рейтинг: 0 / 0
50 сообщений из 50, показаны все 2 страниц
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите написать код на basic
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]