Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

10.10.2009, 17:36
|
|
Познающий
Регистрация: 10.02.2009
Сообщений: 40
Провел на форуме: 59352
Репутация:
0
|
|
Нужна помощь срочно на Turbo Pascale выручайте плизз!!!!!!
Задача 1:
Даны координаты точек на плоскости точек ≤30. Найти пары номера точек, расстояние между которыми наибольшее.
Задача 2:
Дан массив, образовать новый массив состоящий из элементов исходного заканчивающихся на цифру X.
|
|
|

10.10.2009, 18:02
|
|
Участник форума
Регистрация: 05.06.2009
Сообщений: 127
Провел на форуме: 1313455
Репутация:
249
|
|
Сообщение от >>serhio<<
Нужна помощь срочно на Turbo Pascale выручайте плизз!!!!!!
Задача 1:
Даны координаты точек на плоскости точек ≤30. Найти пары номера точек, расстояние между которыми наибольшее.
Задача 2:
Дан массив, образовать новый массив состоящий из элементов исходного заканчивающихся на цифру X.
Задача 1:
Для корректной работы программы требуется файл 'input.txt' в котором находятся координаты точек (Файл поместить в директорию с TurboPascal, ну или прописать путь при открытии файла).
Пример:
Код:
3 4
1 1
3 4
1 1
5 3
1 1
2 3
0 0
-1 -1
Код:
program RASSTOIANIE_MESHDU_TOCHKAMI;
var
f:text;
intI,intB,intM:integer;
MasKorToc:array [1..30,1..2] of integer;
tmpI,MaxRast,tmpRast:real;
goodToch:array[1..30,1..2] of integer;
begin
assign(f,'input.txt');
reset(f);
intM:=1;
while eof(f) = false do begin
readln(f,MasKorToc[intM,1],MasKorToc[intM,2]);
writeln('Position = ',intM,' X = ',MasKorToc[intM,1],' Y = ',MasKorToc[intM,2]);
intM:=intM+1;
end;
intM:=intM-1;
for intI:=1 to intM do begin
for intB:=1 to intM do begin
tmpI:=(MasKorToc[intI,1]-MasKorToc[intB,1])*(MasKorToc[intI,1]-MasKorToc[intB,1]);
tmpRast:=sqrt(tmpI+(MasKorToc[intI,2]-MasKorToc[intB,2])*(MasKorToc[intI,2]-MasKorToc[intB,2]));
if tmpRast>MaxRast then begin
goodToch[1,1]:=intI;
goodToch[1,2]:=intB;
MaxRast:=TmpRast;
end;
end;
end;
writeln;
writeln('Maksimalbnoe rasstoianie mezhdu tochkami: ',goodToch[1,1],' i ',goodToch[1,2]);
close(f);
readln;
end.
Результат работы:
input.txt:
Код:
3 4
1 1
5 3
1 1
2 3
0 0
-1 -1
Код:
Position = 1 X = 3 Y = 4
Position = 2 X = 1 Y = 1
Position = 3 X = 5 Y = 3
Position = 4 X = 1 Y = 1
Position = 5 X = 2 Y = 3
Position = 6 X = 0 Y = 0
Position = 7 X = -1 Y = -1
Maksimalbnoe rasstoianie mezhdu tochkami: 3 i 7
input.txt:
Код:
6 6
3 4
1 1
5 3
1 1
2 3
0 0
Код:
Position = 1 X = 6 Y = 6
Position = 2 X = 3 Y = 4
Position = 3 X = 1 Y = 1
Position = 4 X = 5 Y = 3
Position = 5 X = 1 Y = 1
Position = 6 X = 2 Y = 3
Position = 7 X = 0 Y = 0
Maksimalbnoe rasstoianie mezhdu tochkami: 1 i 7
Задача 2:
Код:
program MASSIV_ELEMENT_PLUS_X;
var
Ishod:array [1..10] of string;
intI:integer;
begin
writeln('Ishodnui massiv');
for intI:=1 to 10 do begin
str(intI*100,Ishod[intI]);
writeln('Element ',intI,' = ',Ishod[intI]);
end;
writeln;
writeln('Preobrazovannui massiv');
for intI:=1 to 10 do begin
Ishod[intI]:= Ishod[intI]+'10';
writeln('Element ',intI,' = ',Ishod[intI]);
end;
readln;
end.
Код:
Результат работы:
Ishodnui massiv
Element 1 = 100
Element 2 = 200
Element 3 = 300
Element 4 = 400
Element 5 = 500
Element 6 = 600
Element 7 = 700
Element 8 = 800
Element 9 = 900
Element 10 = 1000
Preobrazovannui massiv
Element 1 = 10010
Element 2 = 20010
Element 3 = 30010
Element 4 = 40010
Element 5 = 50010
Element 6 = 60010
Element 7 = 70010
Element 8 = 80010
Element 9 = 90010
Element 10 = 100010
Последний раз редактировалось Dosia; 10.10.2009 в 19:19..
|
|
|

11.10.2009, 16:05
|
|
Познающий
Регистрация: 10.02.2009
Сообщений: 40
Провел на форуме: 59352
Репутация:
0
|
|
Еще задачка на Pascale.
Ввод аргумента x, если попал на границу, то вывод сообщения типа:
'=0' '100'
'=50' '-100'
'=-50'
Если попал в промежуток, то вывод соответствующего интервала
'+1' '-1'
'+2' '-2'
'+n' '-n'
|
|
|

12.10.2009, 20:42
|
|
Новичок
Регистрация: 29.07.2007
Сообщений: 4
Провел на форуме: 105502
Репутация:
0
|
|
Помогите найти ошибку
Необходимо перехватить прерывание 5h
Но процедура Int_05h не выполняется
Код:
data segment
old_cs dw ?; для хранения «старого» вектора
old_ip dw ?; прерываний с номером 5h
Ubdate db 0; Что нажал пользователь
data ends
code segment
assume cs:code, ds:data
start:
mov ax,data
mov ds,ax
call clrscr
; Запомним текущий вектор 5h
mov ax, 3505h
int 21h
mov old_ip, bx
mov old_cs, es
; Подменим обработчик
push ds ; DS:DX <- Новый обработчик
mov dx, offset Int_05h
;mov ax, seg Int_05h
;mov ds, ax
mov ax, 2505h
int 21h ; Установили его
pop ds
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov bx,0
make_delay:
mov ah,0
mov al,ubdate
test ax,ax
jnz ekran
jmp nenado
ekran:
mov ubdate,0
;действия
nenado:
jmp make_delay
q:
; Восстановливаем все назад
push ds
mov dx, old_ip
mov ax, old_cs
mov ds, ax
mov ah, 25h
mov al, 9h
int 21h
pop ds
mov ax, 4C00h ; И выходим
int 21h
jmp konec
;////////////////////////////////////////////////////////////////////////////////////////////////////
Int_05h proc
cli ;Запрещаем прерывания
push ax
push bx
push cx
push dx
push si
push di
push es ;и сегментные регистры
push ds
mov ubdate,1
pop ds ;Восстановим сохраненные регистры
pop es
pop di
pop si
pop dx
pop cx
pop bx
pop ax
sti ;Разрешим прерывания
iret ;Выход (возврат в прерванное место)...
Int_05h endp
CLRSCR proc naer ;Очищает экран
push ax
mov ax, 03
int 10h
pop ax
ret
CLRSCR endp
konec:
code ends
end start
Последний раз редактировалось Prototype; 12.10.2009 в 21:19..
|
|
|

13.10.2009, 00:00
|
|
Новичок
Регистрация: 15.04.2008
Сообщений: 1
Провел на форуме: 5500
Репутация:
0
|
|
Добрый вечер. В общем задача такая, необходимо записать символ напрямую в видеобуфер на c++ без использрвания asm вставок. Можно ли это сделать в Visual Studio? и где нибудь это можно сделать? =) Желателен пример кода...
Заранее спасибо.
|
|
|
Ребят помоги пожалуста решить задачи по Паскалю |

13.10.2009, 01:46
|
|
Moderator - Level 7
Регистрация: 22.09.2006
Сообщений: 531
Провел на форуме: 3818187
Репутация:
369
|
|
Ребят помоги пожалуста решить задачи по Паскалю
чесно говоря я в этом не шарю друг попросил решить зачет блин на кону
с меня много много плюсов возможно даже денежкой на wmz (баксов 5) отблагодарю чисто символически
заранее спасибо ответы в ЛС или в АСЬку скидывайте (в профиле)
че блин никому + и денег ненадо что ль первыйй раз такое вижу )
Последний раз редактировалось satana8920; 13.10.2009 в 17:30..
|
|
|

14.10.2009, 06:23
|
|
Познающий
Регистрация: 21.08.2008
Сообщений: 40
Провел на форуме: 361851
Репутация:
12
|
|
Сообщение от satana8920
чесно говоря я в этом не шарю друг попросил решить зачет блин на кону
с меня много много плюсов возможно даже денежкой на wmz (баксов 5) отблагодарю чисто символически
заранее спасибо ответы в ЛС или в АСЬку скидывайте (в профиле)
че блин никому + и денег ненадо что ль первыйй раз такое вижу )
скрины плохо видно! задачи скорее по математики чем по программированию. если пояснишь как решать то сами программы некоторые за час можно написать.
|
|
|

14.10.2009, 08:41
|
|
Moderator - Level 7
Регистрация: 22.09.2006
Сообщений: 531
Провел на форуме: 3818187
Репутация:
369
|
|
Иван8 контакт в ПМ пиши все обьясню
|
|
|

14.10.2009, 20:40
|
|
Познающий
Регистрация: 13.12.2007
Сообщений: 56
Провел на форуме: 469345
Репутация:
51
|
|
Помогите с UNIX'ом, пожалуйста..
Вот такое задание:
Процесс 1 открывает файл и после этого порождает потомка 2. Один процесс пишет в файл один байт, посылает другому процессу сигнал, другой читает из файла один байт, выводит прочитанное на экран и посылает сигнал первому процессу. Организовать N циклов запись/чтение.
Буду очень благодарен..и "+" поставлю =)
|
|
|

15.10.2009, 08:33
|
|
Участник форума
Регистрация: 04.10.2008
Сообщений: 154
Провел на форуме: 203408
Репутация:
7
|
|
Паскаль
помогите плиз
//-----------------------
Выполнить табулирование функции в выбранном интервале с шагом h. Сформировать и вывести на экран таблицу значений функции,
график функции с координатными осями в графическом режиме.
При оформлении отчета построить схему алгоритма только для построения таблицы
Пояснения:
1. интервал выбрать самостоятельно, например, от -15 до 15 или от -5 до 10, главное, чтобы в нем присутствовал 0.
2. шаг для табуляции выбрать таким образом, чтобы в таблице было около 15-20 строк (максимум 23, иначе шапка будет не видна).
3. при выводе графика функции шаг выбрать поменьше, например, 0.01, и рисовать его по точкам - в этом случае точки будут
ложиться рядом и график будет плавным.
4. при выводе графика использовать тот же интервал, что и в таблице
---------------------------
формула номер Адын
http://img251.imageshack.us/img251/1218/formulas.jpg
//------------------------------
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|