Урок первый. Приветствие. Описывать Паскаль я не буду. Да и зачем его описывать? Я просто скажу какую программу надо использовать. Это Turbo Pascal. Начну я с определённых примеров. Для начала простую программу-приветствие. В скобках будут комментарии.
Теперь текст:
Code
program First: ( progam - служебное слово, команда, First - название программы, придумаете сами. В конце обязательно поставьте двоеточие) begin (начало программы, в конце ничего не ставите) write ('Привет. '); (Эта команда выведет слово 'Привет' или любое другое слово которое вы написали вместо него. В конце стоит точка с запятой) writeln ('друзья!'); (Эта команда выведет слово 'друзья!'. Ln (line) переведёт курсор на следующую строчку) writeln ('Это вторая строка'); end. (Конец программы. В конце обязательно точка)
Теперь разьясним что такое служебные слова (операторы). Это функции, команды. Program это команда с помощью которой можно совершать определённые действия.
Внимание! Урок перепроверил, всё правильно!
Урок второй: оформление текста.
На этом уроке я обьясню как надо оформлять текст на экране, то есть цвет текста или фона. Для этого используется CRT с помощью этого модуля мы можем управлять способом вывода текста на экран. Это простой модуль, поэтому он есть и в ПаскальАБС и Турбо паскаль. В паскаль, обычно, при использовании используют процедуру установки курсора на такую-то координату. Длина измеряется X(от 1 до 80),а ширина Y(от 1 до 25). Наверное сказав это я уже кэп Очевидность. Теперь используя эти знания напишу код.
Code
program Second; (или ваше название) uses Crt; (uses - команда подключения модуля, Crt - соответственно модуль) begin(начало) TextBackGround (3); (Вызов процедуры выбора фонового цвета. 3 значит светло-голубой цвет. Вместо номера можно ввести цвет(black,red...)) ClrScr; (Процедура очистки экрана) TextColor (14); (Процедура выбора цвета букв. В скобках указан цвет(в данном случае желтый)) GoToXY (40,10); (Уже понятно что это координаты) Writeln('Что нибудь напишите'); (Вывод текста с установленным цветом(TextColor)и в соответствующей координате(GoToXY)) Delay (1000) (Сам не знаю что это, задержка кажется, но забывать её ни в коем случае нельзя) end. (Конец. Обязательно точка в конце.)
Теперь алгоритм для выполнения задания.
1.Начало. 2.Установить цвет экрана.(TextBackGround) 3.Очистка экрана.(ClrScr) 4.Цвет символов текста.(TextColor) 5.Координаты для текста.(GoToXY) 6.Вывод текста. 7.Задержка(Delay)(Если надо ввести ещё текст только в другой координате(ещё цвет текста поменять), после Delay возвращаетесь к 4 пункту.) 8. Конец.
Задание. Написать программу очищающая экран, и выводящая слова red, green, blue. yellow каждое своим цветом и в своей части экрана. (мыссленно разделить экран на 4 части, и указать соответствующие координаты для каждого слова.)
Урок третий: Integer.
На этом уроке я расскажу вам о типе данных integer. Он может хранить только(!) целые числа, так что особых премудростей здесь знать не надо. Также в таких типах программ используются переменные. Чтобы они использовались нужна команда var(от английского variable - переменная). Теперь собственно код простой программы.
Code
Program BlaBla; (Название ваше) var (здесь начинается раздел описания переменных и их значений) A,B,C: integer; (переменные перечислены через запятую, integer указывает тип данных(целый), так что значение переменной не должна быть дробью) Begin (собственно начало) A:=5; (Это оператор присваивания к переменной значения. Ни в коем случае не путать с A=5!) writeln(A); (выводит содержимое переменной A. Не заключать в апострофы, это не слово!) writeln('A'); (Выводит на экран символ A) A:=A+1; (с помощью этого примера значение A увеличиться на 1) B:=7; (ещё одна переменная) C:=A*B; (формула. * - операция умножения) writeln('Product=',C) (Вывод ответа с пояснением) end. (Конец)
После запуска программы вы увидите следующее:
5 A Product=42
Задания не будет. Просто поэкспереминтируйте с примером. Добавьте ему ещё переменные, измените уравнение. Спасибо за внимание.
Урок третий, часть вторая. Операции с типом integer.
Это не урок, а повторение первой части, и дополнение к ней. Для начала простенькая программа:
Code
Program Action; var A,B,C: integer; begin A:=17; B:=3; C:A*B; writeln('17 * 3=',C); C:=A div B; writeln('17 div 3=',C); C:=A mod B; writeln('17 mod 3=',C); C:=A+B; writeln('17 + 3=',C); C:=A-B; writeln('17 - 3=',C) end.
При запуске программа выведет следующее: 17 * 3=51 17 div 3=5 17 mod 3=2 17 + 3=20 17 - 3=14
Собственно теперь задача. Даны 3 целых числа - A,B,C. Вычислить их сумму и произведение. Алгоритм решения задачи:
1блок. Присваивание значений переменным A, B, C. 2блок. Вычисление суммы чисел в переменной S. 3блок. Вычисление произведения чисел в переменной P. 4блок. Вывод суммы чисел на экран (переменная S). 5блок. Вывод на экран произведения чисел (переменная P).
Вижу я, паскаль уже не нужный язык программирования. В таком случае я продолжать уроки не буду, пойду учить Basic какой нибудь.
Сообщение отредактировал Dinaros - Среда, 09 Марта 2011, 19:14
То что уроки начинаются с программ приветствий это хорошо. Но надо было бы как то расписать что такое "служебные слова", в основном что такое program. Вот например почему будет компилироватся следующая программа:
Code
begin WriteLn('Hello, World); end.
? почему можно писать с program а можно нет? Можно было бы еще описать коротенько про функции вывода Write, Writeln. И еще написать что {текст на русском} - это коментарии @noTformaT
Dinaros, а ты в курсе, что твои "привет друзья" сможет прочитать только герой из суперчетверки. Потому что нет readln-a, консоль сразу хлопнется после компиляции.
Quote (Dinaros)
Я сам не знаю я этого не пробовал. Надо будет изучить.
Какие ты тогда можешь уроки написать?
Quote (Dinaros)
Теперь разьясним что такое служебные слова (операторы). Я самоучка конечно, но попытаюсь обьяснить что это такое. Это такие слова-действия. С помощью них мы составляем определённые действия.
Это функции и процедуры. А служебные слова типа "proogram", я бы сформулировал, что они определяют некоторую служебную константу. Либо, как var, служат для определенных действий. Но программа составляется именно из функций и процедур.
Quote (Dinaros)
Описывать Паскаль я не буду. Да и зачем его описывать? Я просто скажу какую программу надо использовать. Это Turbo Pascal. Можно конечно и Pascal ABC но мне эта больше нравится.
Это вообще кайф, если учесть, что в этих языках имеются определенные отличия
Dinaros Лучше не надо . Начинание похвально, но лучше сначала сам все изучи досконально, а потом учи других. Т.к. мало того, чтобы многое тут не понятно, так оно еще и жутко не читабельно. Проще было все в одну строку тогда записать
И вообще надо выкинуть Turbo Pascal и взять Delphi, толку будет сильно больше. Pascal в своем обычном виде - мертвый язык.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
А что такое? "Обычный" Pascal, который процедурный - устаревший, не актуальный. Что на нем можно толкового написать, кроме hello world'a? C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
for i:=1 to 9 do for j:=1 to 9 do begin Write(i*j,' '); if j=9 then writeln; end;
Ещё короче:
Code
for j:=1 to 9 do begin for i:=1 to 9 do write(i*j, ' '); writeln; end;
Добавлено (24.02.2011, 20:09) --------------------------------------------- Урок хромает с определениями я бы сказал, что не очень слабо.
Не превращайте форум в чат. Пишите более развернуто и понятно - всё равно вас попросят объяснить подробнее. Алгоритмы, программирование, оптимизация, тестирование, ведение проектов. Ищу художника, дизайнера, тестера, программистов С и С++ Обучаю процессам разработки и программированию.
"Обычный" Pascal, который процедурный - устаревший, не актуальный.
что вы имеете ввиду под "обычным" паскалем? Сам ТП7, о котором тут говорится - объектный яп :). А последняя версия стандарта Паскаля датируется 1993 годом - это Object Pascal разработаный для Apple.
Quote (Archido)
Что на нем можно толкового написать, кроме hello world'a?
абсолютно все, ТП7 поддерживает защищенный режим компиляции, а это значит что можно спокойно писать приложения под Вин32. @noTformaT
Тема хорошая. Правда в уроках есть, над чем поработать. Я считаю, что лучше всего начинать программировать с Паскаля, а затем уже переходить на другие ЯП с ООП. По аналогии с Паскалем легче понять другой ЯП.
Людей этого ресурса больше интересуют конструкторы чем ЯП
и что с того? Уроков по ЯП теперь не писать? Может, людей интересующимися ЯП и меньше, но они есть, и им интересно.
monk05,
Quote (monk05)
Я считаю, что лучше всего начинать программировать с Паскаля, а затем уже переходить на другие ЯП с ООП. По аналогии с Паскалем легче понять другой ЯП.
Согласен на 50%. первые 50 - потому что это именно мой случай, вторые 50 - не всем это подходит
Dinaros, ты сам не всё можешь объяснить в своём уроке. Ну о каком продолжении речь?