Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2008, 08:20   #11
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Мда... Вышеприведенные посты пошли в пустую...
Цитата:
If (K[i]<0) or (K[i]>100) then;
Зачем по сто раз проверяешь?
Цитата:
For I:=1 to M do
Begin
K[i]:=K[i]*X;
If (K[i]<0) or (K[i]>100) then;
Writeln (K[i]:4:2,'':3);
Readln(K[i]);
Все тут end ставь для ФОРа, нечего далее ничего проверять. Это вообще конец программы.

Перечитай еще раз внимательно что Карась тебе потрудился написать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.05.2008, 08:31   #12
Дима82
Форумчанин
 
Аватар для Дима82
 
Регистрация: 09.05.2008
Сообщений: 108
По умолчанию

Да не это я всё понял, спасибо Карасю, попробуйте кто-нибудь набрать программу: почему для умножения на Х надо ввести какое-то число...
Код:
Program Lb4;
Uses crt;
Const X=10;
Var K:array[1..10] of real;
    S:real;
    I,M:integer;
Begin
Clrscr;
Write('BBedute 4uclo elementov macciva <=10: ');
Readln(M);
For I:=1 to M do
 Begin
  Write('K[',I,']=');
  Readln(K[I]);
 End;
Writeln;
Writeln('Kontrolnyi Byvod matricy: ');
For I:=1 to M do begin
Write (K[I]:4:2,'':3);
Writeln;
End;
Writeln('Umnoschim massiv na X: ');
For I:=1 to M do
 Begin
 K[I]:=K[I]*X;
 If (K[I]<0) or (K[I]>100) then;
 Writeln (K[I]:4:2,'':3);
 Readln(K[I]);
 End;
Writeln('4isla ne vhodiawie v interval: ');
 For I:=1 to M do
 Begin
 If (K[I]>0) or (K[I]<100) then
 Write (K[I]:4:2,'':3);
 End;
Writeln('Koli4estvo komponentov: ');
 If (K[I]>0) or (K[I]<100) then
 S:=I;
 Write(S:4:2,'':3);
 Readln;
End.
А я понял надо было Readln убрать.

Последний раз редактировалось Дима82; 23.05.2008 в 08:36.
Дима82 вне форума Ответить с цитированием
Старый 23.05.2008, 08:41   #13
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

Код:
For I:=1 to M do  
Begin   
K[i]:=K[i]*X;   
If (K[i]<0) or (K[i]>100) then; \\ точка с запятой закрывает этот блок.  
Writeln (K[i]:4:2,'':3);   
Readln(K[i]);   \\ - ?
End;
Учись разбивать программы на автономные кусочки. Это позволит быстрее находить куски кода где творятся "чудеса"...

Если не засовывать всё в один цикл, то приблизительно можно написать:
Код:
Const X = 10;

Var K : Array [1..10] of Integer;
      I, M, S : Integer;

Begin
Write('BBedute 4uclo elementov macciva <=10: ');   
Readln(M);

For I := 1 To M Do
  Begin
    Write('K[',I,']=');
    Readln(K[i]);
  End;

Writeln;

Writeln('Kontrolnyi Byvod matricy: ');

S := 0;
For I := 1 To M Do
  Begin
    Write (K[i],' ');
    If (K[i] * X > 100) Or (K[i] * X < 0) Then S := S + 1;
  End;

Writeln;
Writeln(S);

Readln;
End.
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума Ответить с цитированием
Старый 23.05.2008, 17:54   #14
Дима82
Форумчанин
 
Аватар для Дима82
 
Регистрация: 09.05.2008
Сообщений: 108
По умолчанию

А как сделать так, чтобы показывало какие именно компоненты не вошли интервал. Что писать вместо этого...
Код:
Writeln('4isla ne vhodiawie v interval: ');
For I:=1 to M do
 Begin
 If (K[I]*X>100) or (K[I]*X<0) then
 Q:=K[I];
 Writeln(Q:4:2,'':3);
 End;
Дима82 вне форума Ответить с цитированием
Старый 23.05.2008, 18:16   #15
Дима82
Форумчанин
 
Аватар для Дима82
 
Регистрация: 09.05.2008
Сообщений: 108
По умолчанию

Код:
Program Lb4;
Uses crt;
Const X=10;
Var K:array[1..10] of real;
    S,Q:real;
    I,M:integer;
Begin
Clrscr;
Write('BBedute 4uclo elementov macciva <=10: ');
Readln(M);
For I:=1 to M do
 Begin
  Write('K[',I,']=');
  Readln(K[I]);
 End;
Writeln('Kontrolnyi Byvod matricy: ');
S:=0;
For I:=1 to M do begin
Writeln (K[I]:4:2,'':3);
If (K[I]*X>100) or (K[I]*X<0) then S:=S+1;
End;
Writeln('Umnoschim massiv na X: ');
For I:=1 to M do
 Begin
 K[I]:=K[I]*X;
 Writeln (K[I]:4:2,'':3);
 If (K[I]>100) or (K[I]<0) then Q:=K[I];
 End;
Writeln('4isla ne vhodiawie v interval: ',Q:4:2,'':3);
Writeln('Koli4estvo komponentov nahoditsia vne intervala: ',S:4:2,'':3);
 Readln;
End.
Почему 4isla ne vhodiawie v interval выходит только одно число?
Дима82 вне форума Ответить с цитированием
Старый 23.05.2008, 18:49   #16
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Цитата:
Writeln('4isla ne vhodiawie v interval: ',Q:4:2,'':3);
Вы эту строку зачем из цикла убрали? Потому и выводит только одно число.
puporev вне форума Ответить с цитированием
Старый 23.05.2008, 19:00   #17
Дима82
Форумчанин
 
Аватар для Дима82
 
Регистрация: 09.05.2008
Сообщений: 108
По умолчанию

А теперь выходят все числа...
Дима82 вне форума Ответить с цитированием
Старый 23.05.2008, 19:03   #18
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Код:
If (K[i]>100) or (K[i]<0) then 
     begin  
       Q:=K[i];   
       Writeln('4isla ne vhodiawie v interval: ',Q:4:2,'':3); 
 End;
puporev вне форума Ответить с цитированием
Старый 23.05.2008, 19:10   #19
Дима82
Форумчанин
 
Аватар для Дима82
 
Регистрация: 09.05.2008
Сообщений: 108
По умолчанию

Да, действительно как я сам не догадался... Спасибо!!!
Дима82 вне форума Ответить с цитированием
Старый 23.05.2008, 19:13   #20
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Q:=K[i]; //эта строчка вообще лишняя, можно без нее
Writeln('4isla ne vhodiawie v interval: ',K[i]:4:2,'':3);
puporev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить задачу на Turbo Pascal tree Паскаль, Turbo Pascal, PascalABC.NET 6 16.05.2010 23:27
Pascal.Помогите решить задачу на шифрование. newuser Паскаль, Turbo Pascal, PascalABC.NET 7 02.06.2008 15:46
Задача в pascal?! помогите пожалуйста решить задачу. Absent Помощь студентам 6 09.04.2008 23:41
Помогите решить задачу на тему - Файлы. Pascal. Impulsive Паскаль, Turbo Pascal, PascalABC.NET 4 23.02.2008 11:55
Помогите решить задачу на pascal Ilya M. Помощь студентам 4 28.10.2007 20:51