2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Найти минимальное число среди -x1,x2,-x3,x4,...,(-1)^n*X_n.
Сообщение12.02.2012, 12:58 
Аватара пользователя
Даны натуральное число n и действительные числа $x_1,x_2,...,x_n.$ Найти минимальное число среди $-x_1,x_2,-x_3,x_4,...,(-1)^n\cdot X_n.$ Задачу нужно решить пользуясь исключительно циклами и разветвлениями.
Моя путанная программа:
код: [ скачать ] [ спрятать ]
Используется синтаксис Pascal
uses crt;

var x,b:real;
      i,n,m1:integer;

BEGIN
     clrscr;
     write('n=');readln(n);
     m1:=-1;
     b:=0;
     if (b<x) then b:=x else
         Begin
              for i:=1 to n do
                  Begin
                       write('x=');readln(x);
                        m1:=-m1;
                        x:=m1*x;
                        b:=x;
                   End;
          End;
          write(b);
          readkey;
END.
 

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

 
 
 
 Re: Найти минимальное число среди -x1,x2,-x3,x4,...,(-1)^n*X_n.
Сообщение12.02.2012, 16:05 
Аватара пользователя
1) if b<x и т.п. нужно внутрь цикла, а не наружу.
2) Тут есть нюанс, связанный с тем, что начальное значение b=0 может быть меньше, чем искомое, и тогда ответ будет неправильным. Правильнее будет проверить, что мы в самом начале (i=1) и если да, то присваивать b значение x безусловно.

 
 
 
 Re: Найти минимальное число среди -x1,x2,-x3,x4,...,(-1)^n*X_n.
Сообщение12.02.2012, 16:19 
Тут проблемы начинаются уже с того, что изначально икс не определён, а уже проверяется. Проще всего начать программу с readln(b), а уж потом в цикле считывать (и проверять) все следующие иксы.

 
 
 [ Сообщений: 3 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group