Войти

Показать полную графическую версию : Qbasic


Guest
10-06-2004, 20:08
END Дано действительное число y
Получить это. (http://mod-modem.narod.ru/111.JPG)

вот что *я написал:
FUNCTION t(y)
FOR k=0 TO 10
f=1 /* препод сказал что первая ошибка в этой строке */
f=f*I
sum1=sum1+(y^(2*k+1)/
* * * * * (f*(2*k+1)) /* вторая */
sum2=sum2+(y^*k)/f
NEXT k
PRINT sum1
PRINT sum2
END FUNCTION

INPUT “y=”;y
z=(1.7*t(.25)+2*t(1+y))/
6-t(y^z-1)
PRINT “z=”;z


Исправлено: Prisoner, 1:58 11-06-2004

Guest
10-06-2004, 21:57
1.7(0.25)+2t(1+y)/(6-t(y-1)) то что нужно получить 8)

Volvo
11-06-2004, 03:17
Что-то типа этого должно сработать...

function fact(n as integer)
 f = 1
 for i=1 to n
   f = f * i
 next i
 fact = f
end function

function t(x as single)
 s1=0
 s2=0
 for k = 0 to 10
   s1 = s1 + (x**(2*k+1)/fact(2*k+1))
   s2 = s2 + (x**2*k)/fact(2*k)
 next k
 t=s1/s2
end function

INPUT “y=”;y
z=(1.7*t(.25)+2*t(1+y))/ 6-t(y^z-1)
PRINT “z=”;z

Kamile
11-10-2006, 01:26
Решите, пожалуйста, задачу: даны 2 массива, заменить min элемент 1-ого массива на max элемент 2-ого массива, и наоборот
1-ый: 54193 541093
2-ой 432107 43217

hasherfrog
11-10-2006, 01:37
Ответ:
1-ый: 432107 541093
2-ой 432107 541093

Prisoner
11-10-2006, 09:52
hasherfrog, 5 баллов!

mrcnn
11-10-2006, 10:07
Решите, пожалуйста, задачу: даны 2 массива, заменить min элемент 1-ого массива на max элемент 2-ого массива, и наоборот
1-ый: 54193 541093
2-ой 432107 43217

Ответ:
1-ый: 432107 541093
2-ой: 54193 43217

Что-то типо этого нуно написать

void main(){
int a[N],b[N],maxi,mini;
maxi=min(a);
mini=max(b);
b[mini]=b[mini]+a[maxi];
a[maxi]=b[mini]-a[maxi];
b[mini]=b[mini]-a[maxi];
}

int min(int *x){
int i,min,index;
for(i=0,min=*x,index=0;i<N;i++){
if (*(x+i)<min){
min=*(x+i);index=i;}
}
return index;
}

int max(int *x){
int i, max, index;
for(i=0,max=*x,index=0;i<N;i++){
if (*(x+i)>max){
max=*(x+i);index=i;}
}
return index;
}

hasherfrog
11-10-2006, 12:41
:-) Всю ночь думал, сколько интерпретаций есть у условия (и сколько возможно соответственно решений)

mrcnn
1. обычно своп делают xor'ом, если уж на то пошло :]
2. а что если N=0? :] -> упадём.
3. Кстати :] читал тут старенькую книжку про написание читаемого кода на фортране. Там написано (одно из первых правил): пишите, что думаете, не изгаляйтесь :] Это к вопросу о swap'е, меня ваш вариант выбил на пару минут в астрал :]

mrcnn
11-10-2006, 13:38
hasherfrog
1. обычно своп делают xor'ом, если уж на то пошло :]
как это реализовывается?

2. а что если N=0? :] -> упадём.
микрософтовский компилятор ошибку выдаст, что не может создать массив из 0 элементов.

3. Кстати :] читал тут старенькую книжку про написание читаемого кода на фортране. Там написано (одно из первых правил): пишите, что думаете, не изгаляйтесь :] Это к вопросу о swap'е, меня ваш вариант выбил на пару минут в астрал :]
Этот вариант свопа предлагает Шень в своей книге. :) обычно я через отдельную переменную обмениваю.

hasherfrog
11-10-2006, 13:52
>> как это реализовывается?

a ^= b; b ^= a; a ^= b;

Arrest
11-10-2006, 23:05
mrcnn
Ваш вариант свопа не ловит момент, когда b[mini]+a[maxi] будет превышать 32767.




© OSzone.net 2001-2012