Не хватает примера для иллюстрации языка

Post Reply
FreeDas
Posts: 2
Joined: Thu Jan 12, 2017 6:48 pm
Flag: Russia

Не хватает примера для иллюстрации языка

Post by FreeDas » Sat Feb 11, 2017 8:07 am

Как будет выглядеть программа вычисления квадратного корня ? Переведите с условного языка на SPL:
input('Введите a,b,c:',a,b,c);
if (a==0) {output('В квадратном уравнении a#0 !'); exit();}
w=b^2-4*a*c;
if (w>=0) {
x1=(-b+sqrt(w))/2a;
x2=(b+sqrt(w))/2a;
output('x1=',x1,'x2=',x2);
exit();
}
if (w<0) {output('данное уравнение не имеет решения ! '); exit();}

User avatar
Mr. Kibernetik
Site Admin
Posts: 4607
Joined: Mon Nov 19, 2012 10:16 pm
My devices: iPad, iPhone, MacBook
Location: Russia
Flag: Russia

Re: Не хватает примера для иллюстрации языка

Post by Mr. Kibernetik » Sat Feb 11, 2017 8:20 am

FreeDas wrote:
Sat Feb 11, 2017 8:07 am
Как будет выглядеть программа вычисления квадратного корня ? Переведите с условного языка на SPL:
input('Введите a,b,c:',a,b,c);
if (a==0) {output('В квадратном уравнении a#0 !'); exit();}
w=b^2-4*a*c;
if (w>=0) {
x1=(-b+sqrt(w))/2a;
x2=(b+sqrt(w))/2a;
output('x1=',x1,'x2=',x2);
exit();
}
if (w<0) {output('данное уравнение не имеет решения ! '); exit();}

Code: Select all

a,b,c=#.input("Введите a,b,c:")
?a=0; #.output("В квадратном уравнении a#0 !"); #.end(); .
w=b^2-4*a*c
? w!<0
   x1=(-b+#.sqrt(w))/(2*a)
   x2=(b+#.sqrt(w))/(2*a)
   #.output("x1="+x1+" x2="+x2)
   #.end()
.
?w<0; #.output("данное уравнение не имеет решения !"); #.end(); .

User avatar
Mr. Kibernetik
Site Admin
Posts: 4607
Joined: Mon Nov 19, 2012 10:16 pm
My devices: iPad, iPhone, MacBook
Location: Russia
Flag: Russia

Re: Не хватает примера для иллюстрации языка

Post by Mr. Kibernetik » Sat Feb 11, 2017 8:27 am

Нужно отметить, что функции - это тоже объекты. То есть вполне можно написать:

Code: Select all

ввод=#.input
число=ввод("Введите число")
и таким образом пользоваться только русским языком (или любым другим) для имен объектов и, конечно, своими собственными названиями даже для системных функций.
В этом примере системную функцию #.input заменили на собственную с именем "ввод" и использовали объект с русским именем "число".

FreeDas
Posts: 2
Joined: Thu Jan 12, 2017 6:48 pm
Flag: Russia

Re: Не хватает примера для иллюстрации языка

Post by FreeDas » Sat Feb 11, 2017 8:35 am

Отлично. А сейчас пример на вложенные циклы: таблица умножения
for (i=2;i<10;i++) {
for (j=1;j<10;j++) {
output(i,'x',j,'=',i*j);
}
}

User avatar
Mr. Kibernetik
Site Admin
Posts: 4607
Joined: Mon Nov 19, 2012 10:16 pm
My devices: iPad, iPhone, MacBook
Location: Russia
Flag: Russia

Re: Не хватает примера для иллюстрации языка

Post by Mr. Kibernetik » Sat Feb 11, 2017 8:40 am

FreeDas wrote:
Sat Feb 11, 2017 8:35 am
Отлично. А сейчас пример на вложенные циклы: таблица умножения
for (i=2;i<10;i++) {
for (j=1;j<10;j++) {
output(i,'x',j,'=',i*j);
}
}

Code: Select all

> i, 2..10
> j, 1..10
#.output(i+"x"+j+"=", i*j)
<
<

Post Reply