Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #16  
Старый 05.12.2010, 19:19
Аватар для SerginhoLD
SerginhoLD SerginhoLD вне форума
Новичок
 
Регистрация: 19.11.2009
Сообщения: 73
Репутация: 12
По умолчанию

PHP код:
var
  
a,b,c,x1,x2,x3,x4,t1,d,t2real;
  
tf1tf2boolean;
  
i:Integer;
  
label hh;
Begin
  
//a:=4; b:=-13; c:=7;
  
i:=0tf1:=falsetf2:=false;
  
hhbeep//вот этого наверно не хватало
  
readln(a);readln(b);readln(c);
  if (
a=0) or (c=0then
  begin
    writeln
(-1); goto hh;
  
end;
  
d:=b*b-4*a*c
__________________
знаете почему внизу эскалатора бабка в будке сидит?
она там педальки крутит и лесенка едет!

Последний раз редактировалось SerginhoLD, 05.12.2010 в 19:44.
Ответить с цитированием
  #17  
Старый 05.12.2010, 20:25
razh2009 razh2009 вне форума
Прохожий
 
Регистрация: 04.12.2010
Сообщения: 20
Репутация: 10
По умолчанию

дописал....
это вообще не компилируется
Код HTML:
program Project1d; {$APPTYPE CONSOLE} uses SysUtils; var a,b,c,x1,x2,x3,x4,t1,d,t2: double; tf1, tf2: boolean; i:Integer; label hh; Begin Reset(input,'bisqr.in'); Rewrite(Output,'bisqr.out'); //a:=4; b:=-13; c:=7; i:=0; tf1:=false; tf2:=false; read(a,b,c); hh: beep; if (a=0) and (b=0) and (c=0) then begin Writeln(-1); goto hh; end; d:=b*b-4*a*c; if d >= 0 then begin t1:=(-b+sqrt(d))/(2*a); t2:=(-b-sqrt(d))/(2*a); if t1 >= 0 then begin x1:=sqrt(t1); x2:=-x1; tf1:=true; i:=i+2; end; if t2 >= 0 then begin x3:=sqrt(t2); x4:=-x3; tf2:=true; i:=i+2; end; end else i:=0; writeln(i); if tf1 then writeln(x1:0:6,#10#13,x2:0:6); if tf2 then writeln(x3:0:6,#10#13,x4:0:6); hh: CloseFile(Output); end.
Ответить с цитированием
  #18  
Старый 05.12.2010, 21:32
Аватар для SerginhoLD
SerginhoLD SerginhoLD вне форума
Новичок
 
Регистрация: 19.11.2009
Сообщения: 73
Репутация: 12
По умолчанию

по человечески сделай чтение/запись файлов

p.s. и в коде своем строчку "hh: beep;" поставь перед присвоением/вводом a,b,c - это если с клавы вводишь ; если из файла читаешь то строку кидаешь в самый конец(чтобы весь следующий код проскочить)
__________________
знаете почему внизу эскалатора бабка в будке сидит?
она там педальки крутит и лесенка едет!

Последний раз редактировалось SerginhoLD, 05.12.2010 в 21:39.
Ответить с цитированием
  #19  
Старый 05.12.2010, 23:27
Аватар для Konrad
Konrad Konrad вне форума
Эксперт
 
Регистрация: 19.03.2009
Сообщения: 1,261
Репутация: 45834
По умолчанию

http://www.delphisources.ru/forum/sh...ad.php?t=14073
Ответить с цитированием
  #20  
Старый 06.12.2010, 00:11
Аватар для SerginhoLD
SerginhoLD SerginhoLD вне форума
Новичок
 
Регистрация: 19.11.2009
Сообщения: 73
Репутация: 12
По умолчанию

PHP код:
program Project2n;

{
$APPTYPE CONSOLE}

uses
  SysUtils
;

label hh;

var
  
a,b,c,x1,x2,x3,x4,t1,d,t2real;
  
tf1tf2boolean;
  
i:Integer;
  
ftextFile;
Begin
  
//a:=1; b:=-2; c:=1;
  
i:=0tf1:=falsetf2:=false;
  
AssignFile(f,'file.txt');
  
Reset(f);
  
Read(f,a,b,c);
  
CloseFile(f);
  if (
a=0then
  begin
    writeln
('0'); goto hh;
  
end;
  
d:=b*b-4*a*c;
  if 
0 then
  begin
    t1
:=(-b+sqrt(d))/(2*a);
    
t2:=(-b-sqrt(d))/(2*a);
    if 
t1 >= 0 then
    begin
      x1
:=sqrt(t1); x2:=-x1;
      
tf1:=true;
      
i:=i+2;
    
end;
    if 
t2 >= 0 then
    begin
      x3
:=sqrt(t2); x4:=-x3;
      
tf2:=true;
      
i:=i+2;
    
end;
  
end
  
else if d=0 then
  begin
    t1
:=(-b+sqrt(d))/(2*a);
    if 
t1 >= 0 then
    begin
      x1
:=sqrt(t1); x2:=-x1;
      
tf1:=true;
      
i:=i+2;
    
end;
  
end
  
else writeln('d < 0');

  
hhbeep;

  
writeln('kol-vo resheniy: ',i);
  if 
tf1 then writeln('x1: ',x1:8:2,#10#13,'x2: ',x2:8:2);
  
if tf2 then writeln('x3: ',x3:8:2,#10#13,'x4: ',x4:8:2);

  
readln;
end
__________________
знаете почему внизу эскалатора бабка в будке сидит?
она там педальки крутит и лесенка едет!
Ответить с цитированием
  #21  
Старый 06.12.2010, 00:37
razh2009 razh2009 вне форума
Прохожий
 
Регистрация: 04.12.2010
Сообщения: 20
Репутация: 10
По умолчанию

оно не работает...я попробовал написать нечто другое, перебрав различные варианты А б и с....получилось вот так :
Код:
program bisqr;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var a,b,c,d,x1,x2,x3,x4,p1,p2:real;
  i,j:Integer;
begin
  Reset(Input,'bisqr.in');
  Rewrite(Output,'bisqr.out');
  read(a,b,c);
  x1:=-3333;x2:=-3333;x3:=-3333;x4:=-3333;
  if (a=0)and(b=0) and (c=0) then writeln(-1);
  if (a<>0) and (b<>0) and (c=0) then begin
      Writeln(1);
      Writeln(0);
  end;

  if (a<>0) and (b=0) and (c=0) then begin
      Writeln(1);
      Writeln(0);
  end;

  if (a=0) and (b=0) and (c<>0) then begin
      Writeln(0);
  end;

  if (a=0) and (b<>0) and (c<>0) then begin
      Writeln(0);
  end;

  if (a=0) and (b<>0) and (c=0) then begin
      Writeln(1);
      Writeln(0)
  end;

  if (a<>0) and (b=0) and (c<>0) then begin
      Writeln(0);
  end;


  if (a<>0)and(b<>0) and (c<>0)then begin
  x1:=-3333;x2:=-3333;x3:=-3333;x4:=-3333;
  if (b*b - 4*a*c) > 0 then begin
     d:=b*b - 4*a*c ;
     p1:=-(b+sqrt(D))/(2*a);
     p2:=-(b-sqrt(D))/(2*a);
     i:=0;
     if p1>0 then begin x1:=Sqrt(p1);x2:=-x1;i:=i+2;end;
     if p2>0 then begin x3:=Sqrt(p2);x4:=-x3; i:=i+2; end;
     Writeln(i);
     if x1<>-3333 then Writeln(x1:0:6);
     if x2<>-3333 then Writeln(x2:0:6);
     if x3<>-3333 then Writeln(x3:0:6);
     if x4<>-3333 then Writeln(x4:0:6);
  end;
  if (b*b - 4*a*c) = 0 then begin p1:=-b/(2*a);
  i:=0;
   if p1>0 then begin x1:=Sqrt(p1); x2:=-x1;i:=2;end;
   Writeln(i);
   if x1<>-3333 then Writeln(x1:0:6);
   if x2<>-3333 then Writeln(x2:0:6);
    end;
    if (b*b - 4*a*c) < 0 then Writeln(0);
  end;

  //Writeln(i);
  //write(x1:0:6,' ',x2:0:6);
  CloseFile(Output);
end.

но я гдето допустил ошибку((((
Ответить с цитированием
  #22  
Старый 06.12.2010, 00:54
Аватар для SerginhoLD
SerginhoLD SerginhoLD вне форума
Новичок
 
Регистрация: 19.11.2009
Сообщения: 73
Репутация: 12
По умолчанию

да я фигею с тебя, код в предыдущем сообщении готовый уже дал

вот например с вариантами абс

PHP код:
program Project2n;

{
$APPTYPE CONSOLE}

uses
  SysUtils
;

label hh;

var
  
a,b,c,x1,x2,x3,x4,t1,d,t2real;
  
tf1tf2boolean;
  
i:Integer;
  
ftextFile;
Begin
  
//a:=0; b:=1; c:=-1;
  
i:=0tf1:=falsetf2:=false;
  
AssignFile(f,'file.txt');
  
Reset(f);
  
Read(f,a,b,c);
  
CloseFile(f);
  if (
a=0) and (c<>0then
   
if b<>0 then
   begin
    t1
:=-c/b;
    if 
t1 >= 0 then
    begin
      x1
:=sqrt(t1); x2:=-x1;
      
tf1:=true;
      
i:=i+2;
    
end;
    goto 
hh;
   
end
   
else begin
    writeln
('0'); goto hh;
   
end;
  if (
a=0) and (c=0then
  begin
    writeln
('0'); goto hh;
  
end;
  
d:=b*b-4*a*c;
  if 
0 then
  begin
    t1
:=(-b+sqrt(d))/(2*a);
    
t2:=(-b-sqrt(d))/(2*a);
    if 
t1 >= 0 then
    begin
      x1
:=sqrt(t1); x2:=-x1;
      
tf1:=true;
      
i:=i+2;
    
end;
    if 
t2 >= 0 then
    begin
      x3
:=sqrt(t2); x4:=-x3;
      
tf2:=true;
      
i:=i+2;
    
end;
  
end
  
else if d=0 then
  begin
    t1
:=(-b+sqrt(d))/(2*a);
    if 
t1 >= 0 then
    begin
      x1
:=sqrt(t1); x2:=-x1;
      
tf1:=true;
      
i:=i+2;
    
end;
  
end
  
else writeln('d < 0');

  
hhbeep;

  
writeln('kol-vo resheniy: ',i);
  if 
tf1 then writeln('x1: ',x1:8:2,#10#13,'x2: ',x2:8:2);
  
if tf2 then writeln('x3: ',x3:8:2,#10#13,'x4: ',x4:8:2);

  
readln;
end

внимание, я тебе кинул в прошлом сообщении ссылку на статью, там основы работы с файлами описаны, почитай обязательно, а то до меня вообще не допирает зачемм написан rewrite,
и присвоение значений переменным из файла: сначала указатель на файл, потом переменные read(f,a,b,c);, где f указатель
__________________
знаете почему внизу эскалатора бабка в будке сидит?
она там педальки крутит и лесенка едет!

Последний раз редактировалось SerginhoLD, 06.12.2010 в 01:04.
Ответить с цитированием
  #23  
Старый 06.12.2010, 01:04
razh2009 razh2009 вне форума
Прохожий
 
Регистрация: 04.12.2010
Сообщения: 20
Репутация: 10
По умолчанию

все также.....скорее всего нужно реально те исключения обработать...(
Ответить с цитированием
  #24  
Старый 06.12.2010, 01:08
Аватар для SerginhoLD
SerginhoLD SerginhoLD вне форума
Новичок
 
Регистрация: 19.11.2009
Сообщения: 73
Репутация: 12
По умолчанию

чего у тебя не работает?
скомпилируй мой код, и че у тебя там не так?
__________________
знаете почему внизу эскалатора бабка в будке сидит?
она там педальки крутит и лесенка едет!
Ответить с цитированием
  #25  
Старый 06.12.2010, 01:12
razh2009 razh2009 вне форума
Прохожий
 
Регистрация: 04.12.2010
Сообщения: 20
Репутация: 10
По умолчанию

эти решения какбы сдаются через инет и провеояются на сервере.....
ну так вот... Твое решение получило неправильный ответ на 3 тесте(...тесты я не знаю....
Ответить с цитированием
  #26  
Старый 06.12.2010, 01:16
SinEater SinEater вне форума
Прохожий
 
Регистрация: 06.12.2010
Сообщения: 2
Репутация: 10
По умолчанию

у меня тоже ошибка на 3 тесте!
Ответить с цитированием
  #27  
Старый 06.12.2010, 01:21
Аватар для SerginhoLD
SerginhoLD SerginhoLD вне форума
Новичок
 
Регистрация: 19.11.2009
Сообщения: 73
Репутация: 12
По умолчанию

1. че за тесты, давай подробнее

2. думай логически, все варианты с а=0 я перебрал,
едем дальше, при b=0 или с=0, и а<>0, дискриминант считается в любом случае, и поэтому корни считаются тоже, в полне может что ответ будет ноль, но программа то посчитает
__________________
знаете почему внизу эскалатора бабка в будке сидит?
она там педальки крутит и лесенка едет!

Последний раз редактировалось SerginhoLD, 06.12.2010 в 01:23.
Ответить с цитированием
  #28  
Старый 06.12.2010, 01:24
razh2009 razh2009 вне форума
Прохожий
 
Регистрация: 04.12.2010
Сообщения: 20
Репутация: 10
По умолчанию

ну тесты мы не знаем....
поэтому давай проверим варианты
а=0
а=0 б=0 с=0
а<>0 b<>0 c=0
и тд...
Ответить с цитированием
  #29  
Старый 06.12.2010, 01:27
Аватар для SerginhoLD
SerginhoLD SerginhoLD вне форума
Новичок
 
Регистрация: 19.11.2009
Сообщения: 73
Репутация: 12
По умолчанию

ну проверяй, я свое мнение уже сказал выше

вон например если всё равно нулю, выведи "это вообще не уравнение, в ответе любое число",
глядишь это и есть третий тест))

а этот тест и задача вообще для чего и зачем?
__________________
знаете почему внизу эскалатора бабка в будке сидит?
она там педальки крутит и лесенка едет!

Последний раз редактировалось SerginhoLD, 06.12.2010 в 01:29.
Ответить с цитированием
  #30  
Старый 06.12.2010, 01:29
razh2009 razh2009 вне форума
Прохожий
 
Регистрация: 04.12.2010
Сообщения: 20
Репутация: 10
По умолчанию

бред како то...вроде все норм, но тест не проходит...
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 13:59.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter