Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

RE: Решение задач на Паскале и Delphi

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> RE: Решение задач на Паскале и Delphi
Имя
Сообщение << Старые топики   Новые топики >>
RE: Решение задач на Паскале и Delphi - 2009-10-24 08:18:56.846666   
Geo999

Сообщений: 2
Оценки: 0
Присоединился: 2009-10-23 19:31:39.586666
Доброго времени суток
Задан двумерный целочисленный массив E размером 9 на 9 элементов. Определить номера тех строк массива, которые не содержат чисел, оканчивающихся на 9.

program k2z4;
uses crt;
var
E:Array[1..9,1..9] of integer;
i,j:integer;
begin
randomize;
for i:=1 to 9 do
for j:=1 to 9 do
begin
E[i,j]:=random(40);
if j=9 then writeln(E[i,j]:4)
else write(E[i,j]:4);
end;
for i:=1 to 9 do
for j:=1 to 9 do
if (E[i,j] mod 10)<>9 then begin writeln('Nomer Stroki - ',i); j:=9 end;
readln;
end.

Если идет в массиве последовательность 19 20 19 20 19 20 … то после 19 все остальные не подхватываются …
Post #: 481
RE: Решение задач на Паскале и Delphi - 2009-10-24 09:06:45.500000   
Actek

Сообщений: 604
Оценки: 0
Присоединился: 2008-02-24 10:24:14.710000
quote:

Если идет в массиве последовательность 19 20 19 20 19 20 … то после 19 все остальные не подхватываются …

как сказал программе делать так она и делает…
if (E[i,j] mod 10)<>9 then begin writeln('Nomer Stroki - ',i); j:=9 end; // это значит если на девять кончается значит переходим к следующей строке
Post #: 482
RE: Решение задач на Паскале и Delphi - 2009-10-24 15:13:16.276666   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
quote:

ORIGINAL: Login_hochu

quote:

ORIGINAL: v0lume

короче вот задачка:
Запишите операторы присваивания языка Паскаль для вычисления периметра P и площади S четырёхугольника, заданного координатами его вершин A(x1,y1),B(x2,y2),C(x3,y3),D(x4,y4).
для вычисления площади разбейте четырёхугольник на два треугольника и воспользуйтесь формулой Герона для нахождения площади треугольника по трем сторонам:
s:=sqrt(p*(p-a)*(p-b)*(p-c)) где a,b,c - длинны сторон треугольника, p - полупериметр.

просто я ещё в 9 классе а уже в универе заочно пошёл на Паскаль…нужно же с чего то начинать =) а как решить задачу никак непойму…нехватает знаний по математике…мне хотя бы киньте идею…оформлю сам в паскале…плз помогите с решением =)

Не уверен, что паскаль сожрет такую формулу, но Делфи не подавился.
P := sqrt(sqr(x1-x2)+sqr(y1-y2)) + sqrt(sqr(x2-x3)+sqr(y2-y3)) + sqrt(sqr(x3-x4)+sqr(y3-y4)) + sqrt(sqr(x4-x1)+sqr(y4-y1))


S := sqrt(((sqrt(sqr(x1-x2)+sqr(y1-y2)) + sqrt(sqr(x2-x3)+sqr(y2-y3)) + sqrt(sqr(x3-x1)+sqr(y3-y1)))/2)*(((sqrt(sqr(x1-x2)+sqr(y1-y2)) + sqrt(sqr(x2-x3)+sqr(y2-y3)) + sqrt(sqr(x3-x1)+sqr(y3-y1)))/2)-sqrt(sqr(x1-x2)+sqr(y1-y2)))*(((sqrt(sqr(x1-x2)+sqr(y1-y2)) + sqrt(sqr(x2-x3)+sqr(y2-y3)) + sqrt(sqr(x3-x1)+sqr(y3-y1)))/2)-sqrt(sqr(x2-x3)+sqr(y2-y3)))*(((sqrt(sqr(x1-x2)+sqr(y1-y2)) + sqrt(sqr(x2-x3)+sqr(y2-y3)) + sqrt(sqr(x3-x1)+sqr(y3-y1)))/2)-sqrt(sqr(x3-x1)+ sqr (y3-y1))))
+
sqrt(((sqrt(sqr(x1-x4)+sqr(y1-y4)) + sqrt(sqr(x4-x3)+sqr(y4-y3)) + sqrt(sqr(x3-x1)+sqr(y3-y1)))/2)*(((sqrt(sqr(x1-x4)+sqr(y1-y4)) + sqrt(sqr(x4-x3)+sqr(y4-y3)) + sqrt(sqr(x3-x1)+sqr(y3-y1)))/2)-sqrt(sqr(x1-x4)+sqr(y1-y4)))*(((sqrt(sqr(x1-x4)+sqr(y1-y4)) + sqrt(sqr(x4-x3)+sqr(y4-y3)) + sqrt(sqr(x3-x1)+sqr(y3-y1)))/2)-sqrt(sqr(x4-x3)+sqr(y4-y3)))*(((sqrt(sqr(x1-x4)+sqr(y1-y4)) + sqrt(sqr(x4-x3)+sqr(y4-y3)) + sqrt(sqr(x3-x1)+sqr(y3-y1)))/2)-sqrt(sqr(x3-x1)+ sqr (y3-y1))))


я непойму как можно найти длинну отрезка по координатам =) а с этой "формулой" меня сразу же нах пошлют…просто незахотят проверять =) ладн ас чё нить поищу…\
Post #: 483
RE: Решение задач на Паскале и Delphi - 2009-10-24 17:59:34.456666   
Lost_boy

Сообщений: 327
Оценки: 0
Присоединился: 2009-03-25 11:07:27.910000
Если есть координаты, значит есть и длина, отрезок A______B имеет координаты А(1,0) и В(5,0), длина АВ = 4, догоняешь? Но это в частном случае когда y - фиксированный, а х - изменяется! А для общего случая есть формула: длина = sqrt(sqr(y2-y1)+sqr(x2-x1));
з.ы. "формула" повергла в шок))
Post #: 484
RE: Решение задач на Паскале и Delphi - 2009-10-24 18:07:01.530000   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
вот вроде всё правильно написал…всем спс =)

writeln('Введите координаты точек (x,y)');
readln(x1,y1,x2,y2,x3,y3,x4,y4);
ab:=sqrt(sqr(x2-x1)+sqr(y2-y1));
bc:=sqrt(sqr(x3-x2)+sqr(y3-y2));
cd:=sqrt(sqr(x4-x3)+sqr(y4-y3));
ad:=sqrt(sqr(x1-x4)+sqr(y1-y4));
p:=ab+bc+cd+ad;
ac:=sqrt(sqr(x3-x1)+sqr(y3-y1));
pp1:=(ab+bc+ac)/2;
pp2:=(ad+cd+ac)/2;
s1:=sqrt(pp1*(pp1-ab)*(pp1-bc)*(pp1-ac));
s2:=sqrt(pp2*(pp2-ad)*(pp2-cd)*(pp2-ac));
s:=s1+s2;
writeln('S=',s,' ','P=',p);


lost_boy
я не тупой…просто формулы для нахождения координат не знал =\ когда X изменяется…тогда фигня…и так понятно…а общую не знал =)
Post #: 485
RE: Решение задач на Паскале и Delphi - 2009-10-24 18:19:16.376666   
Lost_boy

Сообщений: 327
Оценки: 0
Присоединился: 2009-03-25 11:07:27.910000
Я никогда такого и не говорил) Все нормально, все с чего то начинают, просто не ленись использовать гугл, там заранее можно найти ответы на множество вопросов. Элементарный запрос "длина отрезка", и в результате у тебя есть нужная формула.
з.ы. для спс справа есть кнопка "оценить пост")
Post #: 486
RE: Решение задач на Паскале и Delphi - 2009-10-24 18:21:21.620000   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
опять выставляеш тупым…)) гугл юзаю всегда…но иногда просто времени нет…ладн спс
Post #: 487
RE: Решение задач на Паскале и Delphi - 2009-10-25 01:20:16.170000   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
люди…непойму…вот условие
y= -5, если x&lt;-5 или x&gt;5;
x, если -5&lt;=x&lt;0;
2x, если 0&lt;=x&lt;3;
x*x*x, если x&gt;=3 и x&lt;=5;

и код
var x,y:integer; begin writeln('x'); readln(x); if x&lt;-5 or x&gt;5 then y:=-5; if -5&lt;=x&lt;0 then y:=x; if 0&lt;=x&lt;3 then y:=2*x; if x&gt;=3 and x&lt;=5 then y:=sqr(sqr(x)); writeln(y); end.
жму выполнить…выкидывает ошибку типа "операнды имеют неприводимые типы" в месте где сравнивается x с числами…у меня что то не так в синтаксисе или что? =\
Post #: 488
RE: Решение задач на Паскале и Delphi - 2009-10-25 02:24:52.810000   
Lost_boy

Сообщений: 327
Оценки: 0
Присоединился: 2009-03-25 11:07:27.910000
А скобки уже не надо ставить в условиях?
Post #: 489
RE: Решение задач на Паскале и Delphi - 2009-10-25 12:21:40.490000   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
ты про begin\end? непонял чё то… при одном условии писалось всегда if a<1 then …, какие скобки?
Post #: 490
RE: Решение задач на Паскале и Delphi - 2009-10-25 12:44:52.780000   
Lost_boy

Сообщений: 327
Оценки: 0
Присоединился: 2009-03-25 11:07:27.910000
if (x &lt; -5) or (x &gt; 5) then y:= -5; if (-5 &lt;= x) and (x &lt; 0) then y:=x; if (0&lt;= x) and (x &lt; 3) then y:=2*x; if (x &gt;= 3) and (x &lt;= 5) then Где-то так.. Ты как код вообще пишешь, гадая на чайной гуще?

Post #: 491
RE: Решение задач на Паскале и Delphi - 2009-10-25 12:50:12.570000   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
quote:

Где-то так.. Ты как код вообще пишешь, гадая на чайной гуще?

ога…на пене от пива :D
ладн щас попробую…со скобками не встречал условий

сё…код рабочий =)
Post #: 492
RE: Решение задач на Паскале и Delphi - 2009-10-25 19:01:37.353333   
alves

Сообщений: 2
Оценки: 0
Присоединился: 2009-10-25 18:30:25.173333
привет всем,я с дельфи знаком чуть больше месяца(по долгу учебы). мне нужно создать прогу на дельфи7,которая бы напечатала все отрицательные числа от a до b с шагом h.я долго с ней мучался( и не один я) но ни че не получилось.ошибка появляется уже на строчке var.
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject)
var a,b,h:integer;
begin
a:=strtoint(edit1.Text);
b:=strtoint(edit2.Text);
h:=strtoint(edit3.Text);
while a<=b do
begin
if a<0 then edit4.text:=edit4.text+inttostr(a)+' ' ;
a:=a+h;
end;
end;
end.
если кому не трудно помочь - буду безумно благодарен.
Post #: 493
RE: Решение задач на Паскале и Delphi - 2009-10-25 19:20:36.393333   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
quote:

a:=strtoint(edit1.Text);
b:=strtoint(edit2.Text);
h:=strtoint(edit3.Text);

хмм…а помоему:
a:= StrToFloat(Edit1.Text);

какая именно ошибка?

у тебя после procedure TForm1.Button1Click(Sender: TObject) точки с запятой не стоит

a:=a+h; зачем?

Post #: 494
RE: Решение задач на Паскале и Delphi - 2009-10-25 19:43:14.463333   
Lost_boy

Сообщений: 327
Оценки: 0
Присоединился: 2009-03-25 11:07:27.910000
Покажи ошибки будет ясно, так навскидку много end-ов, по крайне мере в конце один точно лишний.
v0lume, читай внимательно условие и код программы, твои вопросов сразу исчезнут.
Post #: 495
RE: Не могу записать на паскале две задачи - 2009-10-25 20:39:50.230000   
dim2sik

Сообщений: 67
Оценки: 0
Присоединился: 2009-08-27 00:17:13.580000
Задание:
Маленький кенгуру Кенг может прыгать на 1,2 или 3 метра. Определить, сколькими способами кенгуру может преодалеть дистанцию в N метров.

Если N > 3, то первый прыжок будет на 1, 2 или 3 метра. После этого остается преодолеть N-1, N-2, N-3 метра соответственно. Отсюда вывод: f(N) = f(N-1) + f(N-2) + f(N-3). Так что "тупо в лоб" считать не обязательно.

Из способов прямого подсчета:

var counter: integer; procedure test(N: integer); begin if N = 0 then count := count+1 else if N &gt; 0 then begin test(N-1); test(N-2); test(N-3) end end


Раскраска
Задание:
Выяснить сколькими различными способами можно покрасить т-этажный дом. Если можно использовать не более двух видов краски: белую и красную, каждый этаж краситься в свой свет.Два подряд этажа не могут быть покрашены в КРАСНЫЙ цвет. Скажем, если 5 этаж покрашен в красный, то 4 и 6 обезательно белые.

Мысли:
Это пример на числа Фибоначчи - верхний этаж либо красный, либо белый. В первом случае предпоследний однозначно белый, оставшиеся n-2 раскрашиваются произвольно. Во втором случае все оставшиеся n-1 этажей раскрашиваются произвольно. Следовательно, f(n) = f(n-1) + f(n-2)

Помогите довести до ума!!!
Post #: 496
RE: Не могу записать на паскале две задачи - 2009-10-25 20:59:39.886666   
AngelSmerti

Сообщений: 3
Оценки: 0
Присоединился: 2009-10-25 20:28:38.603333
Помогите пожалуйста с задачей.

Дано натуральное число n; представить его в двоично-десятичной системе счисления. Последнее означает, что надо получить последовательность двоичных цифр – нулей и единиц; при этом первые четыре двоичные цифры дают запись (в виде двоичного числа) первой (старшей) десятичной цифры числа n, следующие четыре двоичные цифры – запись второй десятичной цифры числа n и т.д. Таким образом, общее число двоичных цифр должно делиться на 4.
Примеры
Если n=93, то двоично-десятичная запись n есть 1001.0011
Если n=607, то двоично-десятичная запись n есть 0110.0000.0111

Требование к оформлению программ:
1.Входные данные для программы должны быть взяты программой из файла input.txt
2.выходные данные сохраняются программой в файл output.txt
Post #: 497
RE: Не могу записать на паскале две задачи - 2009-10-25 21:06:40.376666   
Lost_boy

Сообщений: 327
Оценки: 0
Присоединился: 2009-03-25 11:07:27.910000
В универах пришло время сдавать долги или всех резко закидали лабораторными? О_о

2AngelSmerti:
читаешь инфу о работе с файлами, пишешь алгоритм перевода 10чного числа в 2чное.
Алгоритм:
читаешь данные из файла, записываешь в строку, определяешь ее длину, запускаешь цикл по длине (число итераций = длине строки - 1) на каждой итерации по своему алгоритму преобразуешь отдельный символ сначала в 10чный int потом в его 2ичное представление, записываешь в файл, после записываешь в файл '.'. Цикл закончен программа готова

З.Ы.Читайте первое сообщение в этом топике, за вас писать все эти программки вряд ли кто-то будет.
Post #: 498
RE: Не могу записать на паскале две задачи - 2009-10-25 21:19:59.703333   
AngelSmerti

Сообщений: 3
Оценки: 0
Присоединился: 2009-10-25 20:28:38.603333
2Lost_boy
Спасибо, я изначально задачу не так понял. Дальше сам разберусь
Post #: 499
RE: Не могу записать на паскале две задачи - 2009-10-25 21:37:37.913333   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
quote:

В универах пришло время сдавать долги или всех резко закидали лабораторными? О_о

да нет…мне нужно контрольные 4 написать…3 почти написаны…ост только 4 =)
Post #: 500
RE: Решение задач на Паскале и Delphi - 2009-10-26 22:57:35.226666   
alves

Сообщений: 2
Оценки: 0
Присоединился: 2009-10-25 18:30:25.173333

quote:

ORIGINAL: Lost_boy

Покажи ошибки будет ясно, так навскидку много end-ов, по крайне мере в конце один точно лишний.
v0lume, читай внимательно условие и код программы, твои вопросов сразу исчезнут.

если убрать один end появляется ошибки:
[Error] Unit1.pas(41): ';' expected but '.' found
[Error] Unit1.pas(44): Declaration expected but end of file found
[Fatal Error] Project2.dpr(5): Could not compile used unit 'Unit1.pas'
с тремя эндами в конце ошибок нет. когда запускаю и ввожу зачения для a,b,h и нажимаю вычислить - прога зависает и приходится ее закрывать. как думаешь,в чем ошибка?
Post #: 501
RE: Не могу записать на паскале две задачи - 2009-10-27 12:03:03.756666   
Angella

Сообщений: 22
Оценки: 0
Присоединился: 2007-08-02 23:45:39.443333
.
Post #: 502
RE: Не могу записать на паскале две задачи - 2009-10-27 14:55:18.066666   
dsfwersdf

Сообщений: 1
Оценки: 0
Присоединился: 2009-10-24 10:37:52.723333
Задача: Известно, что из четырех чисел а1, а2, а3, а4 одно отлично от трех других, равных между собой, присвоит номер этого числа переменной n
Я начел решать его таким образом, сначала для а1(см. листинг), но на этом этапе вышла проблема если вести значение больше чем а1 и меньше чем а1, то результат n=0. Например а1=2, а2=5, а3=1, а4=7 результат n=0 Как сделать чтобы программа понимала разные значение? Потом действие на листинге хочу повторит на а2, а3, а4 Я правильно делаю? Задача на if then else

Листинг
program ers;
var a1, a2, a3, a4, n: integer;
begin
{i1:=1;
i2:=2;
i3:=3;
i4:=4;}
writeln ('vvod znacheni');
write ('a1=');
readln (a1);
write ('a2=');
readln (a2);
write ('a3=');
readln (a3);
write ('a4=');
readln (a4);
if (a1>a2) and (a1>a3) and (a1>a4) then
begin
n:=1;
writeln ('n=',n);
end
else
begin
if (a1<a2) and (a1<a3) and (a1<a4) then
n:=1;
writeln ('n=',n);
end;
end.
Post #: 503
RE: Не могу записать на паскале две задачи - 2009-10-27 16:18:54.293333   
Login_hochu

Сообщений: 1471
Оценки: 0
Присоединился: 2007-07-15 14:19:23.423333
program ers; var a1, a2, a3, a4, n: integer; begin writeln ('vvod znacheni'); write ('a1='); readln (a1); write ('a2='); readln (a2); write ('a3='); readln (a3); write ('a4='); readln (a4); n := 0; if (a1=a2) and (a1=a3) and (a1&lt;&gt;a4) then n := 4; if (a1=a2) and (a1=a4) and (a1&lt;&gt;a3) then n := 3; if (a1=a4) and (a1=a3) and (a1&lt;&gt;a2) then n := 2; if (a4=a2) and (a4=a3) and (a2&lt;&gt;a1) then n := 1; if n&gt;0 then writeln ('n=',n) else writeln ('net resheniya'); end.
Post #: 504
RE: Не могу записать на паскале две задачи - 2009-10-28 01:46:07.813333   
legpos

Сообщений: 1
Оценки: 0
Присоединился: 2009-10-28 01:22:15.210000
Задача: Необходимо разработать программу включение и выключение дополнительных мониторов ну и растягивание изображения на примере: можно работать с свойствам экрана
// ShellExecute(0,'open',Pchar('rundll32.exe'),'shell32.dll,Control_RunDLL Desk.cpl @0,3', nil, SW_normal);
((тока не понял как программно там перейти на другой экран и поставить флажки  )) можно конечно сделать не подключаясь к свойствам экрана, но как я понял там надо знать как дрова с моником работают
заранее спасибо__)))
Post #: 505
RE: Не могу записать на паскале две задачи - 2009-10-28 13:54:20.920000   
alexbozhko

Сообщений: 1024
Оценки: 0
Присоединился: 2005-11-24 13:35:34
quote:

ORIGINAL: legpos

Задача: Необходимо разработать программу включение и выключение дополнительных мониторов ну и растягивание изображения на примере: можно работать с свойствам экрана
// ShellExecute(0,'open',Pchar('rundll32.exe'),'shell32.dll,Control_RunDLL Desk.cpl @0,3', nil, SW_normal);
((тока не понял как программно там перейти на другой экран и поставить флажки&nbsp; )) можно конечно сделать не подключаясь к свойствам экрана, но как я понял там надо знать как дрова с моником работают
заранее спасибо__)))

Мне видится все много проще.
Берем regMon.
Включаем ноут с внешним монитором.
Выставляем в настройках экрана все возможные варианты настроек мониторов. Снимаем RegMon'ом что изменилось в реестре.
Изменяем те же значения в реестре кодом…

Хотя в принципе, размер экрана можно получить с помощью объекта screen (в Delphi). Основная проблема в том, что на мониторах могут быть разные разрешения.
Post #: 506
RE: Не могу записать на паскале две задачи - 2009-10-28 17:48:19.970000   
Angella

Сообщений: 22
Оценки: 0
Присоединился: 2007-08-02 23:45:39.443333
Суть проблемы такова:
использую список TList, как я понял в него можно добавить только динамические структуры.
Пытаюсь сделать так:
var point:TPoint; list:TList; begin list:=TList.Create(); point.x:=1; point.y:=1; List.Add(point); end; естессно ругается на несовместимость данных, ибо входных параметром должен быть указатель.
приходится делать так:
type TCoord = class public x:integer; y:integer; end; дальше динамически создавать объект и запихивать в список, но как-то это некрасиво.
Как можно решить проблему? может есть тип списка, который сохраняет record?
Post #: 507
RE: Не могу записать на паскале две задачи - 2009-10-29 19:04:39.980000   
AngelSmerti

Сообщений: 3
Оценки: 0
Присоединился: 2009-10-25 20:28:38.603333
Спасибо за предыдущую задачу. С этой вобще засада. Помогите хотя бы разобраться с задачей, даже смысл её понять не могу :(

Дано натуральное число n. Требуется получить последовательность, которая состоит из нулей и семерок и образует десятичную запись некоторого натурального числа, делящегося на n. (воспользоваться тем, что в числовой последовательности 7, 77, 777, … обязательно найдутся два члена, дающие при делении на n один и тот же остаток)
Post #: 508
RE: Не могу записать на паскале две задачи - 2009-10-30 00:04:23.050000   
Freaxxx

Сообщений: 14
Оценки: 0
Присоединился: 2009-10-11 22:44:27.793333
Люди,помогите пожалуйста…очень надо на завтра….
Матрица A[10,10]
Randomize (0 или 1) Вывести номера сквозных точек(где ноль в строке и в столбце).Спасибо зарание
Post #: 509
RE: Не могу записать на паскале две задачи - 2009-10-30 02:43:04.450000   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
а у меня задачка попроще…да и почти решена ;)

Составьте программу на языке Паскаль для нахождения наибольшего отрицательного и наименьшего положительного числа из введёных четырёх произвольных чисел a,b,c,d.

первое что я сделал, это
if a<0 then max:=a
else min:=a;

где max-максимальное отрицательное, а min-минимальное положительное.
дальше идёт путаница к чему if лепить ;)

по смыслу то правильное начало? или может быть будет проще проверить каждое число на отрицательность и положительность…определить их в отдельные группы…для последующего сравнивания максимального отрицательного числа. и тоже самое с минимальным положительным.

у кого какие мысли?
Post #: 510
RE: Не могу записать на паскале две задачи - 2009-10-30 03:40:15.490000   
Merry Brutus

Сообщений: 11
Оценки: 0
Присоединился: 2009-10-30 01:35:58.996666
quote:

ORIGINAL: Alexzet2006

Какого "хакера" спрашивается его аккаунт забанили: 3Mind; email: Devilroom@rambler.ru;
Очень интересно будет узнать какой сцуко это сделал?
Всякие гандоны здесь флуд да спам разводят, вы их не баните, а нормального чела забанили!!! [sm=mad.gif]
На форуме хакера уже нет места нормальным людям?
Post #: 511
RE: Не могу записать на паскале две задачи - 2009-10-30 04:37:32.370000   
_SaZ_temp

Сообщений: 21
Оценки: 0
Присоединился: 2009-10-22 14:14:45.803333

quote:

ORIGINAL: v0lume

а у меня задачка попроще…да и почти решена ;)

Составьте программу на языке Паскаль для нахождения наибольшего отрицательного и наименьшего положительного числа из введёных четырёх произвольных чисел a,b,c,d.

первое что я сделал, это
if a&lt;0 then max:=a
else min:=a;

где max-максимальное отрицательное, а min-минимальное положительное.
дальше идёт путаница к чему if лепить ;)

по смыслу то правильное начало? или может быть будет проще проверить каждое число на отрицательность и положительность…определить их в отдельные группы…для последующего сравнивания максимального отрицательного числа. и тоже самое с минимальным положительным.

у кого какие мысли?


Мысль одна - если не достаточно навыков для решения таких аццких задач - то стоит попытаться перед началом написания программы нарисовать блок-схему алгоритма решения задачи. Очень помогает.
Post #: 512
RE: Не могу записать на паскале две задачи - 2009-10-30 09:32:06.093333   
Lost_boy

Сообщений: 327
Оценки: 0
Присоединился: 2009-03-25 11:07:27.910000
quote:

Мысль одна - если не достаточно навыков для решения таких аццких задач - то стоит попытаться перед началом написания программы нарисовать блок-схему алгоритма решения задачи. Очень помогает.

А он прав))
Post #: 513
RE: Не могу записать на паскале две задачи - 2009-10-30 15:20:15.830000   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
думаеш не рисовал?) ладн щас второй дубль…вчера сонный был, плохо моск работал ;)
Post #: 514
RE: Не могу записать на паскале две задачи - 2009-10-30 19:51:28.906666   
Zhanik

Сообщений: 3
Оценки: 0
Присоединился: 2009-10-27 20:12:17.760000
помогите! по дельфи!
надо сделать так чтобы данные из выбранного поля (всех строк выбранного поля) БД Access
возвращались на Combobox
пользуюсь через ADOConnection, ADOtable
Post #: 515
RE: Не могу записать на паскале две задачи - 2009-10-30 23:41:59.506666   
alexbozhko

Сообщений: 1024
Оценки: 0
Присоединился: 2005-11-24 13:35:34
quote:

ORIGINAL: Zhanik

помогите! по дельфи!
надо сделать так чтобы данные из выбранного поля (всех строк выбранного поля) БД Access
возвращались на Combobox
пользуюсь через ADOConnection, ADOtable


Примерно так

&nbsp;&nbsp; rsTasks.Open; &nbsp;&nbsp;&nbsp; rsTasks.First; &nbsp;&nbsp;&nbsp; with rsTasks do &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while not EOF do &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; begin &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TaskCombBox.Items.AddObject(FieldByName (gstrFIELD_TASK_NAME).AsString,TObject(FieldByName (gstrFIELD_TASK_ID).AsInteger)); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Next; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end; &nbsp; except &nbsp;&nbsp;&nbsp; //error -&gt; exit &nbsp; end; end;
Post #: 516
RE: Не могу записать на паскале две задачи - 2009-10-31 03:31:06.923333   
v0lume

Сообщений: 310
Оценки: 0
Присоединился: 2009-10-22 20:48:37.160000
quote:

ORIGINAL: v0lume

а у меня задачка попроще…да и почти решена ;)

Составьте программу на языке Паскаль для нахождения наибольшего отрицательного и наименьшего положительного числа из введёных четырёх произвольных чисел a,b,c,d.

первое что я сделал, это
if a&lt;0 then max:=a
else min:=a;

где max-максимальное отрицательное, а min-минимальное положительное.
дальше идёт путаница к чему if лепить ;)

по смыслу то правильное начало? или может быть будет проще проверить каждое число на отрицательность и положительность…определить их в отдельные группы…для последующего сравнивания максимального отрицательного числа. и тоже самое с минимальным положительным.

у кого какие мысли?


вот…сел…подумал…за 5 минут написал ;) мб кому понадобится :D

Program gh;
var
a,b,c,d,min,max:integer;
begin
writeln('Введите числа');
readln(a,b,c,d);
if a>0 then min:=a
else max:=a;
if b>0 then
begin
if min=0 then min:=b
else if b<min then min:=b
end
else
begin
if max=0 then max:=b
else if b>max then min:=b
end;
if c>0 then
begin
if min=0 then min:=c
else if c<min then min:=c
end
else
begin
if max=0 then max:=c
else if c>max then min:=c
end;
if d>0 then
begin
if min=0 then min:=d
else if d<min then min:=d
end
else
begin
if max=0 then max:=d
else if d>max then min:=d
end;
writeln('Максимальное отрицательное - ',max,', минимальное положительное - ',min);
end.

я из за чего не мог написать…в условии не указанно что будет именно 2 положительных или 2 отрицательных…а значит что отрицательных или положительных не может быть вообще ;)
Post #: 517
RE: Не могу записать на паскале две задачи - 2009-10-31 06:12:19.110000   
Zhanik

Сообщений: 3
Оценки: 0
Присоединился: 2009-10-27 20:12:17.760000
quote:


rsTasks.Open;
rsTasks.First;

with rsTasks do
while not EOF do
begin
TaskCombBox.Items.AddObject(FieldByName (gstrFIELD_TASK_NAME).AsString,TObject(FieldByName (gstrFIELD_TASK_ID).AsInteger));
Next;
end;
except
//error -&gt; exit
end;
end;


а как заргистрировать rsTasks
Post #: 518
RE: Не могу записать на паскале две задачи - 2009-11-01 10:03:56.943333   
alexbozhko

Сообщений: 1024
Оценки: 0
Присоединился: 2005-11-24 13:35:34
quote:

ORIGINAL: Zhanik

quote:


rsTasks.Open;
rsTasks.First;

with rsTasks do
while not EOF do
begin
TaskCombBox.Items.AddObject(FieldByName (gstrFIELD_TASK_NAME).AsString,TObject(FieldByName (gstrFIELD_TASK_ID).AsInteger));
Next;
end;
except
//error -&gt; exit
end;
end;


а как заргистрировать rsTasks

rsTasks это DataSet, например, TADOQuery или TADOTable. Естественно, его предварительно нужно настроить. Ну, об этом в любой книге пишут

Post #: 519
RE: Решение задач на Паскале и Delphi - 2009-11-02 19:52:19.690000   
koshmarick

Сообщений: 9
Оценки: 0
Присоединился: 2008-01-10 13:37:26.073333
Доброго времени суток. Сразу оговорюсь: я не программер, я бухгалтер. Учусь заочно и школу окончил 20 лет назад.
Укажите пожалуйста где в программке ошибка
Условие:
Заданы три числа a, b, c. Определить будут ли эти числа сторонами треугольника. Если да то определить будет ли треугольник:
a)        равнобедренным;
b)        равносторонним;
c)         прямоугольным;
d)        остроугольным;
тупоугольным


program Treugolnick;
var
a,b,c:integer;
begin
writeln('Введите стороны треугольника');
readln(a,b,c);
if (a+b>c) and (c+b>a) and (a+c>b) then
&nbsp;&nbsp; begin
&nbsp;&nbsp;&nbsp; if (a=b) or (b=c) or (a=c) then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; begin
&nbsp;&nbsp;&nbsp; if (a=b) and (b=c) then writeln('Треугольник равносторонний')
    else writeln('Треугольник равнобедренный1')
      end
&nbsp;&nbsp;&nbsp; else
&nbsp;&nbsp;&nbsp; if(c=sqrt(a*a+b*b)) or (b=sqrt(a*a+c*c)) or (a=sqrt(c*c+b*b)) then writeln('Треугольник прямоугольный');
    if(c>sqrt(a*a+b*b)) or (b>sqrt(a*a+c*c)) or (a>sqrt(c*c+b*b)) then writeln('Треугольник тупоугольный');
    if(c<sqrt(a*a+b*b)) or (b<sqrt(a*a+c*c)) or (a<sqrt(c*c+b*b)) then writeln('Треугольник остроугольный');
   end
else writeln('Введены неверные данные!');
readln
end.
 


Помогите пожалуйста.


Post #: 520
Страниц:  1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
Все форумы >> [Компилируемые языки] >> RE: Решение задач на Паскале и Delphi







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.