ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

26.11.2009, 22:03
|
|
Познающий
Регистрация: 13.12.2007
Сообщений: 56
Провел на форуме: 469345
Репутация:
51
|
|
Помогите плз сделать это задание..
Имеется 4 вида фигуры: точка, круг, квадрат и правильный треугольник. Требуется создать программу, которая содержала бы список из выше приведенных фигур и рисовала бы их на экране. Каждый экземпляр какого-либо вида фигуры обладает координатами центра, относительно которого экземпляр будет рисоваться. Если список не пуст, то один элемент списка обязательно должен быть активным, то есть:
1. при отображении он должен каким-либо образом выделяться
2. с данным элементом пользователь может проводить различные операции:
а. удалить
b. подвинуть на экране (влево, вправо, вверх, вниз)
с. повернуть на какой-либо угол (для квадрата и треугольника)
d. изменить размер
e. изменить цвет
Программа должна позволять пользователю выбирать вид фигуры и создавать фигуру текущего вида, которая будет добавляться в список.
|
|
|

26.11.2009, 23:08
|
|
Познающий
Регистрация: 31.03.2009
Сообщений: 53
Провел на форуме: 654008
Репутация:
11
|
|
решил вернуться и повторить пройденое в паскале. Хотел написать элементарный калькулятор, да вылазиет ошибка: "Error in expression"
вот код
Код:
program calc;
uses crt;
var a,s,b:integer; c:char;
begin
writeln('введите 1 число');
readln(a);
writeln('введите знак дейчтвия');
readln(c);
writeln('введите 2 число');
readln(b);
case c of
+ : s:=a+b;
- : s:=a-b;
* : s:=a*b;
/ : s:=a/b;
end;
writeln('ответ=',s);
repeat until keypressed;
end.
|
|
|

26.11.2009, 23:19
|
|
Участник форума
Регистрация: 30.09.2009
Сообщений: 148
Провел на форуме: 11581319
Репутация:
241
|
|
не пробывал весь русский заменить на английский?
|
|
|

26.11.2009, 23:20
|
|
Участник форума
Регистрация: 11.07.2009
Сообщений: 175
Провел на форуме: 2835808
Репутация:
185
|
|
ну символ поидее вот так должен быть '+' '-' '*' '/'
И к чему тут uses crt?
Да И S формат REAL потому что деление
Последний раз редактировалось h(f)ucker; 26.11.2009 в 23:23..
|
|
|

26.11.2009, 23:22
|
|
Участник форума
Регистрация: 30.09.2009
Сообщений: 148
Провел на форуме: 11581319
Репутация:
241
|
|
каг бэ стандартный модуль иль нет?
|
|
|

26.11.2009, 23:30
|
|
Познающий
Регистрация: 15.07.2009
Сообщений: 71
Провел на форуме: 520157
Репутация:
35
|
|
Сообщение от Fireblade
решил вернуться и повторить пройденое в паскале. Хотел написать элементарный калькулятор, да вылазиет ошибка: "Error in expression"
вот код
Код:
program calc;
uses crt;
var a,s,b:integer; c:char;
begin
writeln('введите 1 число');
readln(a);
writeln('введите знак дейчтвия');
readln(c);
writeln('введите 2 число');
readln(b);
case c of
+ : s:=a+b;
- : s:=a-b;
* : s:=a*b;
/ : s:=a/b;
end;
writeln('ответ=',s);
repeat until keypressed;
end.
Вообще то символы в ковычки брать надо
Код:
program calc;
uses crt;
var
a,s,b: integer;
c: char;
begin
writeln('введите 1 число');
readln(a);
writeln('введите знак действия');
readln(c);
writeln('введите 2 число');
readln(b);
case c of
'+' : s:=a+b;
'-' : s:=a-b;
'*' : s:=a*b;
'/' : s:=a div b; //s - integer!
end;
writeln('ответ=',s);
repeat until keypressed;
end.
|
|
|

26.11.2009, 23:32
|
|
Участник форума
Регистрация: 11.07.2009
Сообщений: 175
Провел на форуме: 2835808
Репутация:
185
|
|
Сообщение от alexey-m
'/' : s:=a div b; //s - integer!
Это уже не калькулятор получается, точный расчет главное, ну ты понел...
|
|
|

26.11.2009, 23:51
|
|
Познавший АНТИЧАТ
Регистрация: 04.08.2008
Сообщений: 1,359
Провел на форуме: 8220635
Репутация:
1593
|
|
Между repeat и until должно идти тело цикла.
Вот правильный код калькулятора:
Код:
program calc; {кстати, program можно и не писать}
uses crt; {это нам для очищения экрана}
label 1; {для перехода к началу}
var a,b:integer; {числа} c:char; {проверка повтора, знака счета}
s:real; {real, т.к присутствует деление}
begin
1: clrscr; {очистка экрана}
writeln('введите 1 число');
readln(a);
writeln('введите 2 число');
readln(b);
writeln('введите знак действия');
readln(c);
case c of {проверка введенного}
'+' : s:=a+b;
'-' : s:=a-b;
'*' : s:=a*b;
'/' : s:=a/b;
end;
writeln('ответ с точностью до двух цифр: ',s:4:2);
{:2 - кол-во цифр после запятой, используется для деления}
writeln ('хотите сосчитать еще раз? Y/N');
readln (c);
if c='Y' then goto 1 {переходим к началу} else
if c='N' then writeln ('для выхода нажмите любую клавишу...');
{просто продолжение}
readln; {ожидание пустого ввода}
end.
|
|
|

27.11.2009, 00:06
|
|
Познающий
Регистрация: 15.07.2009
Сообщений: 71
Провел на форуме: 520157
Репутация:
35
|
|
Сообщение от h(f)ucker
Это уже не калькулятор получается, точный расчет главное, ну ты понел...
Это не я integer указывал, а лишь показал, где ошибка и как правильней делить будет с integer
|
|
|

27.11.2009, 00:31
|
|
Познающий
Регистрация: 04.05.2008
Сообщений: 36
Провел на форуме: 450557
Репутация:
19
|
|
Delphi/Pascal
-----------------------------
на DIV и MOD
Присвоить переменной z первую цифру из дробной части действительного числа r.
я чутка не трезвый и сообразить не могу =(
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|