Форум Игромании
 
Регистрация
Справка

Программирование Создание, разработка и доработка различных игр и программного обеспечения

Ответ
 
Опции темы
Старый 05.01.2011, 11:33   #1
Юзер
 
Регистрация: 28.02.2008
Адрес: Волгоград
Сообщений: 153
Репутация: 44 [+/-]
Pascal/Паскаль


Среда программирования Паскаль тоже является одной из самых известных и используемых, преподаваемой во многих вузах и даже некоторых школах.
Наиболее распространенными версиями являются Turbo Pascal 7.0 и Pascal ABC.
На данный момент активно развивается новый проект Pascal ABC.NET!

Пример
Скрытый текст:
uses crt;
const {объявление постоянных, не изменяющихся, переменных}
n=10;
m=1000;
var {объявление переменных}
a:array[1..n] of longint;
i,s:integer;
begin {начало программы}
randomize; s:=0;
for i:=1 to (random(n-2)+2) do {цикл}
begin
a[i]:=random(m);write(a[i],';');s:=s+(a[i] mod 10);{сгенерировали очередной элемент массива и нашли сумму остатков от деления на 10}
end;
writeln; {ушли на новую строку}
writeln(s); {вывели на экран результат}
end. {конец программы.}






Интересные ссылки по теме:


Ссылки для скачивания
Скрытый текст:
Turbo Pascal 7.0 ~1mb
Turbo Pascal 7.1 ~5.61mb
PascalABC.NET 1.6 + Microsoft .NET Framework v2.0 ~98mb
Скрытый текст:
с официального сайта
Содержит:
* Система программирования PascalABC.NET
* Задачник PT4
* Платформа Microsoft .NET Framework v2.0 SP2
* WindowsInstaller KB893803 (обновление Windows Installer до версии 3.1)
* Russian Language Pack for .NET v2.0 (русификация сообщений о ошибках времени выполнения)
* Framework Class Library Help (документация для всплывающей подсказки)
* Справка по .NET библиотекам с кодом на PascalABC.NET (chm-файл, 50 Мб)

PascalABC.NET 1.6 ~5.3mb
Скрытый текст:
с официального сайта
Содержит:
* Система программирования PascalABC.NET
* Задачник PT4


В плане программирования, я думаю, будем стараться объяснить и помочь всем, чем сможем.
Sergey94 вне форума  
Отправить сообщение для Sergey94 с помощью ICQ Ответить с цитированием
Старый 22.01.2013, 21:42   #2
Новичок
 
Аватар для Kvadratchelu
 
Регистрация: 20.01.2013
Сообщений: 22
Репутация: 7 [+/-]
имхо, нынче очень мощные позиции становятся у бесплатного Free Pascal, особенно интересна среда Lazarus.
Kvadratchelu вне форума  
Ответить с цитированием
Старый 16.10.2013, 15:38   #3
Юзер
 
Аватар для Luchs
 
Регистрация: 29.03.2013
Адрес: Нубляндия
Сообщений: 132
Репутация: 10 [+/-]
Хай. Уже 2ой день учу паскаль по книге Ушкакова "паскаль для школоты школьников" (free pascal IDE) :) Дошел до " как включить в работу числовые данные". И вот задание:
Скрытый текст:

Выполнять математические действия над целыми числами уже могу но данное задание выполнить не смог. Напишите код или разжуйте пожалуйста. Спс.
__________________
Мой ту'ум идеален...
Luchs вне форума  
Отправить сообщение для Luchs с помощью Skype™ Ответить с цитированием
Старый 16.10.2013, 21:24   #4
Шаман
 
Аватар для adVISeR

 
Регистрация: 13.04.2007
Адрес: Praha, ČR
Сообщений: 966
Репутация: 330 [+/-]
Luchs
C:= A;
A:= B;
B:= C;
adVISeR вне форума  
Ответить с цитированием
Старый 16.10.2013, 21:30   #5
Юзер
 
Аватар для Luchs
 
Регистрация: 29.03.2013
Адрес: Нубляндия
Сообщений: 132
Репутация: 10 [+/-]
adVISeR, а без введения 3ей переменной?
Сори за параллельное обсуждение проблемы
__________________
Мой ту'ум идеален...
Luchs вне форума  
Отправить сообщение для Luchs с помощью Skype™ Ответить с цитированием
Старый 17.10.2013, 00:15   #6
Вечный Искатель
 
Аватар для Анкар

 
Регистрация: 07.07.2007
Сообщений: 303
Репутация: 387 [+/-]
Luchs, есть один способ с побитовым XOR, но он плохой, не трогай его. И еще с использованием арифметики, но он не универсальный.
__________________
Я вижу, чего ты видеть не можешь —
Видения, на глазное бельмо что похожи.
Лишь повернешься - уйдет наваждение,
Шептанием станет их тихое пение.

Затем станешь видеть то, чего нет —
Тени на месте, где должен быть свет.
Незряч, обезумел, будь отныне готов,
Век коротать свой в Зале Слепцов.
Анкар вне форума  
Ответить с цитированием
Старый 17.10.2013, 01:00   #7
Surgeon of Death
 
Аватар для Keltar


 
Регистрация: 21.12.2009
Адрес: Тамбов
Сообщений: 2,125
Репутация: 520 [+/-]
Luchs,
Цитата:
А:=А+В;
В:=А-В;
А:=А-В;
вроде так.
__________________
Information Technology Laboratory: решение любых проблем в области мобильных технологий. Быстро. Недорого.
Mobile: Sony Xperia Z2
Tablet: Nexus 7 2013 wifi
Keltar вне форума  
Отправить сообщение для Keltar с помощью ICQ Ответить с цитированием
Старый 17.10.2013, 01:11   #8
Юзер
 
Аватар для Luchs
 
Регистрация: 29.03.2013
Адрес: Нубляндия
Сообщений: 132
Репутация: 10 [+/-]
Keltar, спасибо! Задачка решена!
__________________
Мой ту'ум идеален...
Luchs вне форума  
Отправить сообщение для Luchs с помощью Skype™ Ответить с цитированием
Старый 17.10.2013, 03:05   #9
Шаман
 
Аватар для adVISeR

 
Регистрация: 13.04.2007
Адрес: Praha, ČR
Сообщений: 966
Репутация: 330 [+/-]
Luchs, не советую такой метод использовать вообще, создаёт головную боль тем, кто будет читать этот код. В наше время экономия памяти на одной числовой переменной это ничто.
adVISeR вне форума  
Ответить с цитированием
Старый 21.10.2013, 09:52   #10
 
Аватар для Льюс Терин
 
Регистрация: 22.12.2006
Адрес: интернеты
Сообщений: 7,535
Репутация: 1186 [+/-]
Пацаны, каким оператором проверить имеет переменная какое либо значение или нет?
__________________
PSN
Льюс Терин вне форума  
Отправить сообщение для Льюс Терин с помощью ICQ Отправить сообщение для Льюс Терин с помощью Skype™ Ответить с цитированием
Старый 21.10.2013, 14:16   #11
Кандидат наук
 
Аватар для pokibor
 
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,351
Репутация скрыта [+/-]
nosikamus, что за странный вопрос? Переменная не может не иметь значения. Если не ошибаюсь, в Паскале всем переменным при объявлении присваивается значение по умолчанию (например, для целочисленного типа - 0 и т.п.). В иных языках (например, C), если переменная не инициализирована, у нее может быть какое угодно значение.
Если речь идёт о ссылочной переменной, то о том, что переменная не содержит ссылки. символизирует особое значение. В Паскале, если не ошибаюсь, оно зовётся nil.
Если нужно убедится, было ли что-то присвоено переменной, пути два:
1) инициализировать её со значением, которое не может быть присвоено по логике программы, и проверять потом на равенство этому значению;
2) выделить отдельную булеву переменную, инициализировать ее значением false и ставить в true одновременно с присваиванием значения нужной переменной.

Объектно-ориентированное программирование даёт ряд дополнительных возможностей, но это уже другая история.
__________________
Товарищ, верь: пройдет она -
Эпоха лживых, злых понятий.
Весь мир очнется ото сна,
И на обломках "демократий"
Напишут наши имена!

Мы были волшебницами (оригинальное фентези)
Тень Войны (фанфик по ГП)
pokibor на форуме  
Отправить сообщение для pokibor с помощью ICQ Ответить с цитированием
Старый 21.10.2013, 14:27   #12
 
Аватар для Льюс Терин
 
Регистрация: 22.12.2006
Адрес: интернеты
Сообщений: 7,535
Репутация: 1186 [+/-]
Цитата:
Сообщение от pokibor Посмотреть сообщение
Если нужно убедится, было ли что-то присвоено переменной, пути два:
Вот это, спасибо.

Цитата:
Сообщение от pokibor Посмотреть сообщение
Объектно-ориентированное программирование даёт ряд дополнительных возможностей, но это уже другая история.
Добавлено через 30 секунд
Ну мне для делфи вообще нужно, я трэдом ошибся.
__________________
PSN

Последний раз редактировалось Льюс Терин; 21.10.2013 в 14:35. Причина: Добавлено сообщение
Льюс Терин вне форума  
Отправить сообщение для Льюс Терин с помощью ICQ Отправить сообщение для Льюс Терин с помощью Skype™ Ответить с цитированием
Старый 20.12.2013, 00:10   #13
Юзер
 
Аватар для Влад В В
 
Регистрация: 01.08.2008
Сообщений: 457
Репутация: 52 [+/-]
Парни, есть написанная программа. Нужно найти точки пересечения с осью Ox.
Скрытый текст:
Program parabola;
uses GraphABC;
Var i,x0,y0,x1,y1,k,x1a,y1a: integer;
x,y,x2,y2: real;
Begin
setWindowSize(640,400);
x0:=320; y0:=360; k:=25;
line(x0,20,x0,380); line(20,y0,620,y0);
line(x0,20,x0-10,30); line(x0,20,x0+10,30);
line(630,y0,620,y0-10); line(630,y0,620,y0+10);
for i:=-5 to 5 do
begin
line(x0+(i*k),y0-10,x0+(i*k),y0+10);
textout(x0+(i*k),y0+10,inttostr(i));
end;
for i:=-5 to 5 do
begin
line(x0-10,y0+(i*k),x0+10,y0+(i*k));
if i<>0 then textout(x0+10,y0+(i*k),inttostr(-i));
end;

setPenColor(cllime);
x:=-10;
While x<=10 do
begin
y:=sqr(x)*x+3*(sqr(x))-9*x-5+cos(x);

x1:=trunc(x0+x*k); y1:=trunc(y0-y*k);
circle(x1,y1,2);
x:=x+0.01;
end;

End.


И вот вопрос в чём. Можно ли вывести точки пересечения на самом графике?
__________________
I am Commander Shepard and this is my favourite post on the Internet.
Влад В В вне форума  
Ответить с цитированием
Старый 20.12.2013, 10:31   #14
 
Аватар для Льюс Терин
 
Регистрация: 22.12.2006
Адрес: интернеты
Сообщений: 7,535
Репутация: 1186 [+/-]
Влад В В, Находишь координаты пересечения и рисуешь точку, не? Y тебе уже известен.
__________________
PSN
Льюс Терин вне форума  
Отправить сообщение для Льюс Терин с помощью ICQ Отправить сообщение для Льюс Терин с помощью Skype™ Ответить с цитированием
Старый 14.01.2014, 14:14   #15
Опытный игрок
 
Регистрация: 23.04.2013
Адрес: Aokigahara
Сообщений: 1,286
Репутация: 260 [+/-]
Сегодня начали изучать этот язык)
Flvcko вне форума  
Отправить сообщение для Flvcko с помощью ICQ Ответить с цитированием
Старый 21.01.2014, 03:18   #16
Игроман
 
Аватар для Hast


 
Регистрация: 13.07.2007
Адрес: Сімферополь
Сообщений: 3,012
Репутация: 629 [+/-]
igroman_96ru, сердечно поздравляю.
Hast вне форума  
Ответить с цитированием
Старый 22.01.2014, 14:48   #17
Опытный игрок
 
Регистрация: 23.04.2013
Адрес: Aokigahara
Сообщений: 1,286
Репутация: 260 [+/-]
Hast, cпасибо,язык действительно интересный
Flvcko вне форума  
Отправить сообщение для Flvcko с помощью ICQ Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 21:25.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Rambler's Top100 Яндекс цитирования