Go-ger Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 Задача №1Пример программы для заполнения массива из 20 элементов целыми случайными числами в диапазоне от 0 до 99. и сортировки элементов массива по возрастанию. Оформить вывод сортированного массива и отладить программу.Const n= 20Var m :array [1..n] of integer ;I,j temp for i :=1 to n do:integer ;BeginRandomize ;{инициализация генератора случайных чисел}m :=random (100) ;{заполнение массива случай. числами в диапазоне от 0 до 99}{сортировка элементов массива }for i : = 1to n dofor j:=i+ 1to n doif m>m[j] then begintemp :=m;m :=m[j];m[j]:=tempendЗадача №2Задан массив действительных чисел. Определить , сколько раз меняется знак в данной последовательности чисел, запомнить номера позиций , в которых происходит смена знака.Буду очень благодарен за помощь. Цитата
TolkienDRR Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 есть же практическая одноименная тема, зачем создавать кучу.. ну или информативней чтоли называйте. Const n= 20Var m :array [1..n] of integer ;I,j temp for i :=1 to n do:integer ;BeginRandomize ;{инициализация генератора случайных чисел}m[i] :=random (100) ;{заполнение массива случай. числами в диапазоне от 0 до 99}{сортировка элементов массива }for i : = 1to n dofor j:=i+ 1to n doif m[i]>m[j] then begintemp :=m[i];m[i] :=m[j];m[j]:=tempendчушь какая то, ты сам начинал писать?? Цитата
mr.unkind90 Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 TolkienDRRс каждым годом таких тем становится всё больше из-за того что школьники поступают в универы и там нифига сделать не могут, а что будет через лет 10 О_О Цитата
Lakers Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 uses crt;Const n= 20;Var m :array [1..n] of integer ;i,j temp :integer ;beginclrscr;Randomize ;for i:=1 to n do m[i] :=random (100) ;for i: =1 to n-1 do for j:=i to n do if m[j]>m[j+1] then begin temp :=m[j]; m[j] :=m[j+1]; m[j+1]:=temp; end;for i:=1 to n do write(a[i]:5);readkey;end.uses crt;var i,n:integer; a:array[1..20]of integer;beginclrscr;write('N= ');readln(n);for i:=1 to n do read(a[i]);for i:=1 to n-1 do if a[i]*a[i+1]<0 then writeln('между ',i,' и ','j');readkey;end. Цитата
TolkienDRR Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 uses crt;var a : array[1..100] of real; ind : array[1..100] of byte; i,j,count:integer; b:boolean;begin randomize; a[1]:=random(501)-250; j:=0; count:=0; for i:= 2 to 100 do begin a[i]:=random(501)-250; if ((a[i]>=0) and (a[i-1]<0)) or ((a[i]<0) and (a[i-1]>=0)) then begin inc(j); ind[j]:=i; inc(count); end; end; writeln('+/- change = ',count);end.Добавлено спустя 6 минут 49 секунд:Lakers, вроде как запомнить надо =) и цикла одного вроде хватить должно =) Цитата
Lakers Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 ну да=)зато вот это((a[i]>=0) and (a[i-1]<0)) or ((a[i]<0) and (a[i-1]>=0)) можно вроде как и покороче :-D Цитата
TolkienDRR Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 a*a[i+1]<0хахаха, я злодей =D ты ноль не учитываешь )))))))два числа "-1, 0" у тебя не определят смену знаков =PДобавлено спустя 1 минуту 10 секунд:хотя сначала сказал, что у тебя решение элегантнее ))) и девушке рядом даже начал объяснять ))) и тут осенило про нолик )))))))поэтому злодей =Р Цитата
Lakers Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 смотри :-Dменяется знакНоль не имеет знака.http://ru.wikipedia.org/wiki/0_%28%D1%87%D0%B8%D1%81%D0%BB%D0%BE%29 Цитата
Go-ger Опубликовано 10 марта, 2010 Автор Жалоба Опубликовано 10 марта, 2010 Спасибо за помощь Lakers и TolkienDRR Цитата
TolkienDRR Опубликовано 10 марта, 2010 Жалоба Опубликовано 10 марта, 2010 Lakersну дык, знак был -, а потом его вообще не стало )) это смена знака ))))) у числа 0 нет знака отрицания, как и у положительных. Пишут -16, но никто не пишет +16 ))) так что ноль надо учитывать =Р значит -16 16 - смена знака, т.к. знак минус убирается ровно как и -16 0 )))думаю стоит учесть, задача же простая, думаю препод может придерется к нулю в таком случае =))) и доказывать ему что ноль - граница беззнаковая, лучше не стоит ) Цитата
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.