Вы не вошли.
Давайте отделим мух от котлет.
О чём я здесь и пишу. Есть дисциплины информатики и алгоритмизации. Есть дисциплины алгоритмических языков. И это две разные вещи. Не нужно мешать их вместе.
переменные есть только двух типов, вещественный скаляр (числа с плавающей запятой) и вектор таких скаляров.
Не мало? Всё-таки классический набор из числового и текстового типа - понятнее и удобнее.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума
Сравнение двух программ - одна в PascalABC.NET, другая на C#. Задача: a+b=c, а и b вводятся с клавы.
PascalABC.NET:
program damn;
uses crt; //Для PascalABC.NET не нужно подгружать модуль crt, он встроен. Я его привёл лишь для вида Pascal вообще
var:a,b,c:uint64; //PascalABC.NET может использовать единые типы .NET, в том числе uint64
begin
writeln('Введите a,b');
readln(a,b);
c:=a+b;
writeln(c);
end.то же самое на C#. Необращайте внимание на размер кода - ПООП того стоит))):
using System; //сокращаем команды
namespace someone // создаём некое пространство имён для работы в нём
{
class myclass
{
static void Main() //статический метод, название Main говорит о том, что это точка входа в программу, void - метод не возвращает результат. Пустые скобки - метод без аргументов.
{
Console.WriteLine("Введите a,b");
int a= Convert.ToInt(Console.ReadLine());
int b= Convert.ToInt(Console.ReadLine());
int c=a+b;
Console.WriteLine("Результат "+ c);
}
}
}Прошу аналоги на питоне, бэйсике и рубине
Отредактировано Armanx64 (31-10-09 14:38:35)
Вне форума
Sinclair BASIC:
10 INPUT "Введите а, b";a,b
20 PRINT "a+b=";a+b
Vilnius BASIC:
10 PRINT "Введите числа a и b"
20 INPUT a
30 INPUT b
40 LET c=a+b
50 PRINT "C=";c

очевидно-невероятное или невероятно-очевидное...
Вне форума
PYthon
#coding=utf-8
a = raw_input('Введите а: ')
b = raw_input('Введите b: ')
c = int(a)+int(b)
print c
Отредактировано Namolem (26-10-09 23:17:43)
Вне форума
Вывод:
Первые два подойдут для обучения программирования, basic подойдёт для скриптов и макросов, а куда питон приделать? Может в одну коробку с бэйсиком?
Вне форума
Armanx64
чего в питоне не хватает для обучения программированию?*
Вне форума
Усложняем задачу:
10 PRINT "Тренажёр клавиатуры ASCII: максимум букв из 100 попыток"
20 LET missed=0
30 FOR i=1 TO 100
40 LET char=INT (RND*93)
50 IF char<31 OR char>93 THEN GOTO 40 (здесь я опечатался, но поправил)
60 LET A$=CHR$ (char)
70 PRINT "Буква-";A$
80 LET B$=INKEY$
90 IF B$="" THEN GOTO 80
100 IF B$<>A$ THEN LET missed=missed+1
110 NEXT i
120 PRINT "Количество попаданий:";100-missed
130 STOP
Правда, в моей программе были ещё реализованы часы, для ограничения времени, но через чтение напрямую системных переменных счётчика обновлений экрана, посему я их отсюда выкинул. Итого тринадцать строчек. А каков размер подобного кода на других языках? Притом, что BASIC допускает более одного оператора в строке, но для наглядности, я "вытянул" листинг.
Отредактировано Невропаразитолог (27-10-09 00:53:00)
очевидно-невероятное или невероятно-очевидное...
Вне форума
Простейший тренажёр клавиатуры. На экране появляется буква, нужно нажать соответсвующую клавишу. Правда, русский алфавит "пролетает", но у меня на speccy не было русификатора, так что так...
очевидно-невероятное или невероятно-очевидное...
Вне форума
примерно так
from msvcrt import * # getch()
from random import * # случайный числа
fails = 0
for i in range(10): # i принимает все значения в отрезке 0,1,2,...,9
a = randrange(61)+32 # случайное число 32,33,...,92
print chr(a)+' ' # вывод символа
b =ord(getchar()) # b - код символа (ord) нажатой клавиши (getchar())
if a!=b: # если промахнулся
fails+=1 # записать это
print("You have ",fails," fails")# вывод кол-ва промахов
Отредактировано Namolem (27-10-09 11:00:43)
Вне форума
Ждём версий на других языках, а потом сделаем выводы, что более подходит для наглядного объяснения алгоритмов.
очевидно-невероятное или невероятно-очевидное...
Вне форума
не совсем уверен, бэйсик не знаю, по по-моему у тебя тут не от 1 до 100
30 FOR i=1 TO 100
40 LET char=INT (RND*93)
50 IF char<31 OR char>93 THEN GOTO 30
Вне форума
Пардон, глаза слипаются, сейчас поправлю на GOTO 40. Спасибо, я думал и читать-то такую древность никто не будет...
очевидно-невероятное или невероятно-очевидное...
Вне форума
Namolem, раскомментируйте пожалуйста программу, что бы было понятно гди и зачем какая фигня.
И про IronPython.NET не забывайте
Вне форума
сделал..
вот программа нахождения 10 членов последовательности фибоначчи. Как она будет выглядеть на других языках?
def fibo(n):
a, b = 0, 1
while b < n:
print b,
a, b = b, a+b
fibo(10)Отредактировано Namolem (27-10-09 11:13:35)
Вне форума
Короче, походу стоит переезжать в ветку "Программирование".
очевидно-невероятное или невероятно-очевидное...
Вне форума
сделал..
вот программа нахождения 10 членов последовательности фибоначчи. Как она будет выглядеть на других языках?def fibo(n): a, b = 0, 1 while b < n: print b, a, b = b, a+b fibo(10)
Помниццо, на заре программирования были конкурсы по написанию самого неудобочитаемого кода на Це. Как раз вот эта строчка a, b = b, a+b мне эти конурсы напомнила. Давайте уже не экономить строки, если программа делается в школе и для детишек. Тем более, что и взрослые дяди не всегда в таком коде с первого раза разберутся.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума
неужели это
a, b = b, a+bменее понятно, чем
int a,b,temp;
temp = a;
a = b;
b = temp + a;?
Вне форума
QBASIC:
PRINT "Тренажёр клавиатуры ASCII: максимум букв из 100 попыток"
MISSED = 0
FOR i = 1 TO 100
1 : CHAR = INT(RND * 93)
IF CHAR < 31 OR CHAR > 93 THEN GOTO 1
A$ = CHR$(CHAR)
PRINT "Буква - "; A$
2 : B$ = INKEY$
IF B$ = "" THEN GOTO 2
IF B$ <> A$ THEN MISSED = MISSED + 1 (Тут была ошибка, пардон, недоглядел.)
NEXT i
PRINT "Количество попаданий: "; 100 - MISSED
ENDQBASIC без GOTO (ну не люблю я этот оператор
), с выравниванием (отсутствие форматирования затрудняет чтение кода):
PRINT "Тренажёр клавиатуры ASCII: максимум букв из 100 попыток"
MISSED = 0
FOR i = 1 TO 100
DO
CHAR = INT(RND * 93)
LOOP WHILE CHAR < 31 OR CHAR > 93
A$ = CHR$(CHAR)
PRINT "Буква - "; A$
DO
B$ = INKEY$
LOOP WHILE B$ = ""
IF B$ <> A$ THEN MISSED = MISSED + 1 (Тут была ошибка, пардон, недоглядел.)
NEXT i
PRINT "Количество попаданий: "; 100 - MISSED
ENDPS. Про GOTO в школе лучше вообще не рассказывать. 
Отредактировано city17 (30-10-09 16:59:12)
Вне форума
неужели это
a, b = b, a+bменее понятно, чем
int a,b,temp; temp = a; a = b; b = temp + a;?
Да, менее понятно. Есть ещё очень хорошие запутывающие операторы, такие как +=, -= и т.п., а также самый запутывающий, на мой взгляд, оператор ?= :, реализующий функционал стандартного IF...THEN...ELSE...ENDIF. Эти операторы удобны только тем, что позволяют сделать более компактный код... за счёт ухудшения его читаемости.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума
не согласен с тобой, но смысла спорить о таких вещах не вижу
Вне форума
Доставляющее интервью Алксниса. 
Вне форума
PS. Про GOTO в школе лучше вообще не рассказывать.
Вот опять, ради чего, ограничивать кого-либо из-за технически необоснованной традиции ненавидеть GOTO? Уберите из языка все операторы DO...LOOP, FOR...NEXT, WHILE...AGAIN, UNTIL...AGAIN, GOSUB...RETURN, их модификации и комбинации, и... весь их функционал прекрасно реализуется одной-единственной GOTO с применением IF...THEN...ELSE. Говоря о традициях - вспомните ассмблер, команду безусловного перехода jpNNNN - прямой предок GOTO. Вот вам и преемственность.
Linux_must_die!, Спасибо за ссылку, РЖАЛЪ. Оказывается, нажимая кнопки в Windows, пользователь нихера не понимае, что он делает... Сдаёт дедушка, в маразм впадает. А ещё и требует от школьников бесплатно тестировать ALT. Как не стыдно, бесплатный детский труд использовать. Фу!
очевидно-невероятное или невероятно-очевидное...
Вне форума
Сдаёт дедушка, в маразм впадает. А ещё и требует от школьников бесплатно тестировать ALT. Как не стыдно, бесплатный детский труд использовать. Фу!
Не менее глобально доставляющее интервью поциента по основополагающим основам бытия. Пардон за тафтологию.
soft.mail.ru/interview_page.php?id=135
Таки да, маразм имеет место быть.
Афтар благодарен алфавиту за любезно предоставленные буквы.
Вне форума
QBASIC:
IF B$ = A$ THEN MISSED = MISSED + 1
При совпадении, наращиваем счётчик промахов?
очевидно-невероятное или невероятно-очевидное...
Вне форума
static void Main()
За main, возвращающую void, следует бить головой об backspace. Читайте описания стандартов, вникайте.
.:``́3̶E̶P̶O̶W̶h̶`́`:.
Вне форума
[ Сгенерировано за 0.011 сек, 7 запросов выполнено - Использовано памяти: 1.76 Мбайт (Пик: 1.84 Мбайт) ]