Суббота, 16.11.2024
Мой сайт
Меню сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Главная » Гостевая книга [ Добавить запись ]

Страницы: « 1 2 3 4 5 6 7 ... 123 124 »
Показано 61-75 из 1848 сообщений
1788. Анастасия   (10.11.2009 15:23)
0  
Здравствуйте! Помогите решить задачу. Только начала изучать паскаль, по этому нужно придумать решение без массивов. Задача: Создать программу, осуществляющую перевод числа (формата real) из десятичной системы счисления в Q-ичную. Заранее спасибо.
Ответ: Вот простейший вариант трех подпрограмм: первая для вещественного положительного, другая для целого без знака, третья для перевода в дополнительный код

uses CRT;
CONST
NumChars: String = ''0123456789ABCDEF'';
max_frac_chars = 10;
ord0 = ord(''0'');

function ConvertToSystemReal(src: real; ToSyst: Integer): String;
var
intg, count: Longint;
frc, r : Real;
s: String;
begin
s := '''';
if (ToSyst < 2) or (ToSyst > 16) then
begin
ConvertToSystemReal := ''Uncorrect System''; exit
end;
src := abs(src);
intg := round(Int(src));
repeat
s := NumChars[(intg mod ToSyst) + 1] + s;
intg := intg div ToSyst;
until intg = 0;
s := s + ''.'';
count := 0;
frc := frac(src);
repeat
frc := frc*ToSyst;
intg:= round(int(frc));
s := s + NumChars[intg + 1];
frc := frc - intg;
inc(count);
until ((count > max_frac_chars) or (frc = 0));
ConvertToSystemReal := s;
end;

function ConvertToSystemInt(src: Word; ToSyst: Integer): String;
var s: String;
begin
s := '''';
if (ToSyst < 2) or (ToSyst > 16) then
begin
ConvertToSystemInt := ''Uncorrect System''; exit
end;
repeat
s := NumChars[( src mod ToSyst) + 1] + s;
src := src div ToSyst;
until src = 0;
ConvertToSystemInt := s
end;

function ConvertToBinAdditional(src: Integer): String;
var s: String;
i, len, ad: Integer;
begin
if src < 0 then begin s:=''1''; src :=abs(src) end
else s:=''0'';
repeat
s := chr((src mod 2) + ord0) + s;
src := src div 2
until src = 0;
if s[1] = ''1'' then begin
len := length(s);
for i:= 2 to len do
if s[i] = ''1'' then s[i] := ''0''
else s[i] := ''1'';

i := len;
if s[len] = ''1'' then ad := 1 else ad := 0;
repeat
if s[i] = ''1'' then begin s[i] := ''0''; ad := 1 end
else begin s[i] := ''0''; ad:=0 end;
dec(i);
until (ad = 0) or (i < 2);
end;
ConvertToBinAdditional := s
end;

var i: Integer;

BEGIN
ClrScr;
{integer unsigned}
WriteLn(''Вещественное'');
for i:=2 to 16 do
WriteLn(i:3,'': '',ConvertToSystemReal(12.34, i));
{real}
WriteLn(''Нажмите любую клавишу'');
ReadKey;

WriteLn(''Целое беззнаковое'');
for i:=2 to 16 do
WriteLn(i:3,'': '',ConvertToSystemInt(24, i));
{integer signed - system = binary}
WriteLn(''Нажмите любую клавишу'');
ReadKey;

WriteLn(''Целое в дополнительном коде (бинарное)'');
for i:=2 to 16 do
WriteLn(i:3,'': '',ConvertToBinAdditional(-i));
WriteLn(''Нажмите любую клавишу'');
ReadKey;
END.

1787. Аширов Артем   (04.11.2009 23:08)
0  
Ах, да. Немножко надоедает писать одно и то же в Паскале. Подскажите, как создавать модули?
Ответ: Сейчас завал - у нас скоро конференция, а я отвечаю на ней за многое :((
Если не найдете нужную Вам информацию, напомните после 22 ноября

1786. Артем Аширов   (04.11.2009 22:29)
0  
Здравствуйте! Хочу поблагодарить вас за такой огромный сайт. Практически, он сильно помог мне с изучением Паскаля. Теперь я перехожу к Делфи. Мне 16, учусь в 10 кл. Подскажите, пожалуйста, какие примерно бывают задачи на олимпиаде по инф-ке? Какие на Паскале?
Ответ: Как раз сейчас проходит IV Открытая олимпиада школьников по программированию в 2009/10 учебном год.
Посмотрите ... (проверил сейчас адрес - проблемы) http://www.olympiads.ru/
Прочитал тут:
http://window.edu.ru/window/news?p_news_id=26933
или тут:
http://news.emind.ru/competition/show/356

1785. Аня   (31.10.2009 17:51)
0  
Здравствуйте. помогите пожалуйста!! Очень прошу и заранее большое спасибо.
дан целочисленный массив размера N. Вставить перед1|после2 каждой серии нулевой элемент.
Ответ: Вот решение:
uses CRT;
CONST
max_len = 10000; {Максимальная длина КОНЕЧНОГО массива}
_len = max_len div 2; {Длина при вводе, с учетом того, что
куда-то надо будет вставлять символы}
VAR
ar: array[1 .. _len] of char;
count : Integer; {длина заполненной строки}
ser_beg, ser_end: Integer;
i, j: Integer;
BEGIN
ClrScr;
randomize;
count := 20;
for i:= 1 to count do ar[i] := chr(random(10)+ord(''0''));
for i:= 1 to count do write(ar[i]);
WriteLn;
count := 20;
i:=2;
while i <= count do begin
if ar[i] = ar[i-1] then
begin
ser_beg := i-1;
ser_end := i;
while (ser_end <= count) and (ar[ser_end] = ar[ser_beg]) do
inc(ser_end);
{Освобождаем место для первого нуля}
inc(count);
for j:=count downto ser_beg do ar[j] := ar[j-1];
ar[ser_beg] := ''0'';
inc(ser_end);
{Освобождаем место для второго нуля}
inc(count);
for j:=count downto ser_end do ar[j] := ar[j-1];
ar[ser_end]:=''0'';
i:= ser_end+1;
inc(i)
end
else
inc(i)
end;
for i:= 1 to count do write(ar[i]);
Writeln;
END.
Или скачайте тут:
http://borlpasc.narod.ru/Boris/NUSH.PAS

1784. katya   (26.10.2009 22:46)
0  
Здравствуйте! Помогите пожалуйста с задачкой..очень надо! :) Даны 2 круга с общим центром и радиусами R1 и R2 (R1>R2) найти площадь этих кругов, а так же площадь S3 кольца, внешний радиус которого R1 а внутренний радиус равен R2:
S1=пи*(R1)в квадрате S2=пи*( R2)в квадрате S3= S1- S2. в качествезначения пи использовать константу языка паскаль pi. Выходные данные : ввести 2 целыхх числа R1 и R2 (1<= R1 , R2<=100). Выходные данные: вывести площади этих кругов S1 и S2, а так же площадь S3 кольца, внешний радиус которго равен R1, а внутренний радиус равен с точностью до 3х цифр в дробной части в разных строках
Ответ: Это просто:
Учтите только, что здесь есть ляп - один апостроф заменяется на 2

{Два круга и кольцо из гостевой 26 окт 2009}
VAR
R1, R2, s: Real;
BEGIN
WriteLn(''Вычисление площади кругов и кольца'');
WriteLn(''Введите значение радиусов колец:'');
Write('' Радиус первого круга: ''); ReadLn(R1);
Write('' Радиус второго круга: ''); ReadLn(R2);
if R2 > R1 then begin s:=R1; R1:=R2; R2:=s end;
WriteLn(''Площадь большего круга = '', pi*R1*R1:8:3);
WriteLn(''Площадь меньшего круга = '', pi*R2*R2:8:3);
WriteLn(''Площадь кольца = '',pi*(R1*R1 - R2*R2):8:3);
WriteLn;
WriteLn(''Для выхода нажмите клавишу ENTER''); ReadLn
END.

1783. strelok   (25.10.2009 16:19)
0  
блин,почему как хочу скачать текст или прогу выбивает символы какие то???
Ответ: Первое слово не обязательно было писать, а вот какую именно программу или текст скачать хотите, чтобы я проверить мог ...

1782. dsf   (20.10.2009 17:27)
0  
Скачать бесплатно Паскаль на merd.ucoz.ru

1781. Alexandr   (18.10.2009 08:46)
0  
Здравствуйте!
Подскажите как подклеить CHR-шрифты (можно туда же и EgaVga.bgi) в один файл

1780. Skry   (02.10.2009 15:24)
0  
сайт в общем клевый, но дизайн по мойму "немного" скучноват
Ответ: Да разве в этом суть? :))

1779. Alexandr   (22.09.2009 06:30)
0  
Здравствуйте!
Не подскажите ли, где найти редактор CHR - шрифтов?
Ответ: Вот тут возьмите:
http://borlpasc.narod.ru/Boris/Bfe.zip

1778. Алексей   (10.09.2009 17:21)
0  
Отличный сайт!!! првда то что искал не нашел но много полезного почерпнул.
Ответ: А что Вы искали и не нашли? Может есть у меня?

1777. Юрий   (23.08.2009 15:10)
0  
Хочу такой же раскрученности как у Вашего сайта.
Я предлагал Вам исходники неплохих игр. Но переписка
заглохла. Все на мой сайт!

1776. Богдан   (21.08.2009 21:50)
0  
А есть справочник Паскаля - типа все команды с лбьяснением?
Ответ: Делал как-то такой:
http://borlpasc.narod.ru/Boris/BPascal7.zip

1775. Вася   (03.08.2009 11:25)
0  
Здравствуйте!
Посетив Ваш сайт, хочу Вас поблагодарить и задать вопрос.
Написав программу для элементарного графического отображения не запускается графический файл. Компилятор выдает ошибку - файл не найден.
Прошу Вашей помощи.
С уважением, посетитель сайта.
Ответ: Если компилятор, то значит, не найден GRAPH.TPU. Нужно зайти в меню среды программирования
Options -> Directories...
и там, в строке Unit directories написать D:BPUNITS;
У меня именно там лежит файл GRAPH.TPU (ну а Вы напишите свой путь)
ЗЫ, третьим параметром в InitGraph нужно написать путь к файлу EGAVGA.BGI. Это должен быть "короткий" путь, без пробелов и русских букв. Или положить этот файл в папку, где находится исходный файл Вашей программы.
У меня этот файл находится в папке D:BPBGI

1774.   (01.08.2009 11:06)
0  
Отличный сайт, только ссылки не сверены, ну и как-то не широко объята тема, можно ведь и на новости в этой области внимание обращать
Ответ: Признаем :)), и осенью поработаем. Но как-то новостей особых нет. Разве что ответы на просьбы решить задачу ...


Имя *:
Email *:
WWW:
Код *:
Поиск
Друзья сайта
  • Создать сайт
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Все проекты компании
  • Copyright MyCorp © 2024
    Конструктор сайтов - uCoz