Дано равносторонний треугольник со стороной a. Найти, длину стороны равнобольшого ему квадрата. Вычислить для таких значений:
Цитата
a) a=7; b) a=13 c) a=54
Написать программу, которая определяет, можно ли построить треугольник со сторонами a, b, і c. Написать программу для определения квартала года по порядковому номеру месяца. Найти количество чисел кратных 7 от 7 до 7777 включительно.
Цитата
a) Используя цикл for; b) Используя цикл while; c) Используя цикл repeat
Найти среднее арифметическое всех целых положительных чисел меньше числа n включительно. Вычислить для
Цитата
a) n=5; b) n=20; c) n=156
Написать программу нахождения суммы чисел: S=10+22+32+…+n2, если
Цитата
a) n=7; b) n=10; c) n=12
Найти остаток от деления натурального числа a на натуральное число b путём последовательного вычитания от числа a числа b.
Натуральное число называется идеальным, если оно равно суме всех своих делителей, кроме самого числа. Проверить, будет ли число n идеальным.
AlaRic
18.11.2002 20:56
Цитата
Найти среднее арифметическое всех целых положительных чисел меньше числа n включительно. Вычислить для a) n=5; B) n=20; c) n=156.
program new; uses wincrt; var summ,n,k,i:integer; c:real; begin writeln('Вычисление среднего арифметического'); writeln('введите кол-во чисел'); readln(i); summ:=0; c:=0; n:=1; for k:=1 to i do begin summ:=summ+n; inc(n); end; c:=summ/i; writeln('Ответ',c:5:1); end.
Это для всех пунктов.Просто введешь нужное кол-во чисел.
Добавлено (18.11.02 16:16):
Цитата
Написать программу для определения квартала года по порядковому номеру месяца.
program new14; uses wincrt; var a,b:integer; begin writeln('введите номер месяца'); readln(a); case a of 1:b:=1; 2:b:=1; 3:b:=1; 4:b:=2; 5:b:=2; 6:b:=2; 7:b:=3; 8:b:=3; 9:b:=3; 10:b:=4; 11:b:=4; 12:b:=4; end; writeln('Квартал',b:1); end.
Добавлено (18.11.02 16:38):
Цитата
Найти остаток от деления натурального числа a на натуральное число b путём последовательного вычитания от числа a числа b.
program new4; uses wincrt; var a,b,c,d,e:integer; begin d:=0; c:=0; e:=0; writeln('введите A и B'); readln(a,B); c:=a div b; e:=a; for d:=1 to (a div B) do begin e:=e-b; end; writeln('Остаток',e:5); end.
Ivs
19.11.2002 0:45
AlaRic, а не прощи ли так: while a>=b do a:=a-b; усе в "a" остаток от деления a на b...... ;)
AlaRic
19.11.2002 1:03
Цитата
AlaRic, а не прощи ли так: while a>=b do a:=a-b; усе в "a" остаток от деления a на b......
Полностью согласен чув
Alex
19.11.2002 18:11
Цитата
Написать программу нахождения суммы чисел: S=10+22+32+…+n2
Код
program sum; var n,i,sum:integer; begin write('Введите номер -> '); readln(n); sum:=10; for i:=2 to n do begin sum:=sum+i*10+2; end; writeln ('Сумма чисел последовательности до n(10,22,32,42,....,n2) равна ',sum); readln end.
Прогу не проверял.Написана прямо в форуме!!!
zeFes
23.11.2002 22:48
Цитата
Написать программу для определения квартала года по порядковому номеру месяца.
Одной строкой:
Код
var a:byte; begin write('Enter your month'); Readln(a); if (a>12) or (a=0) then Write('Error'); {***} Write(trunc((a/3)*0.9)); {***} end.
думаю так.!!! 8)
trminator
25.11.2002 22:59
Найти среднее арифметическое всех целых положительных чисел меньше числа n включительно.
Сумма всех положит. целых чисел от 1 до n будет (как арифметич-я прогрессия) 1+n ----*n 2 Среднее арифметическое - сумма всех чисел делить на n, итого (1+n)/2 И не надо никаких циклов...
var n:integer; begin Write('До какого числа?'); ReadLn(n); WriteLn('Ответ:',(1+n)/2:5:5){А почему-то :0:0 у меня не проходит ???} end.
trminator
25.11.2002 23:15
10+22+32+...+n2=?
Снова рОдная арифметическая прогрессия: 22+32+42+...(ну ещё +10) 22+32+...=(22+10n+2)*(n-1)/2=(12+5n)(n-1)
var n:integer; begin ReadLn(n);WriteLn(10+(12+5*n)*(n-1)) end.
Вроде правильно :D
Romario
4.12.2002 4:21
Прикольно, а я и не знал, что тут ещё одна моя тема есть Ладно, оставляю тут задачку может тут кто-то решит...
Даны натуральное число N и последовательность A1, A2, …,A N, AN+1. Определить наибольшее из нечетных и количество четных чисел, входящих в последовательность A1, A2, …,A N, AN+1.
И ещё одна задачка, в которой я условие не догоняю, обясните:
Дана последовательность из 50 чисел. Найти их среднее арифметическое. Найти сколько среди них отличных от последнего числа.
Найти сколько среди них отличных от последнего числа. ЧТо енто значит?
ClaneOffline
4.12.2002 15:52
Цитата
Прикольно, а я и не знал, что тут ещё одна моя тема есть Ладно, оставляю тут задачку может тут кто-то решит...
Даны натуральное число N и последовательность A1, A2, …,A N, AN+1. Определить наибольшее из нечетных и количество четных чисел, входящих в последовательность A1, A2, …,A N, AN+1.
И ещё одна задачка, в которой я условие не догоняю, обясните:
Дана последовательность из 50 чисел. Найти их среднее арифметическое. Найти сколько среди них отличных от последнего числа.
Найти сколько среди них отличных от последнего числа. ЧТо енто значит?
И ещё одна задачка, в которой я условие не догоняю, обясните:
Дана последовательность из 50 чисел. Найти их среднее арифметическое. Найти сколько среди них отличных от последнего числа.
Наверное имеются в виду отличные от среднего арифметического.
Romario
5.12.2002 3:25
Clane, спасибо огромное! ;)
Ivs
5.12.2002 15:23
Цитата
Наверное имеются в виду отличные от среднего арифметического
Нет. На самом деле задача разбивается на 2 1) Найдем сумму всех элементов и разделим на их кол-во 2) для i от 1 до n-1 шаг 1 нач если a[i]<>a[n] то k:=k+1; кнц вывести ('Отличных от последнего ',k);
З.Ы: Romario а ты случайно задачи береш не из учебника "Информатика 6 кл" ;)
Romario
6.12.2002 3:24
Ivs, неа это лабораторные работы мне в универе задают, хочу в них раздуплиться. Это может препод мой оттудова их черпает ;D
Добавлено (5.12.02 22:31): Ivs, напиши всю задачу, что-то не могу я раздуплиться...
Romario
6.12.2002 3:47
Вот ещё задачи, которые срочно нужно решить:
1. Найти все трехзначные числа, которые состоят из разных цифр, а их сумма равна А (А вводить с клавиатуры).
2.Определить количество трехзначных натуральных чисел, сумма цифр которых равна заданному числу N.
3.Написать программу поиска двузначных чисел, удовлетворяющих следующему условию: если к сумме цифр числа прибавить квадрат этой суммы, то получится само число.
4.Написать программу поиска трехзначных чисел, квадрат которых оканчивается тремя цифрами, составляющими исходное число.
5.Написать программу поиска четырехзначною числа, которое при делении на 133 дает в остатке 125, а при делении на 134 дает в остатке 111.
6. Найти сумму целых положительных чисел из промежутка от А до В, кратных 4 (значения переменных А и В вводятся с клавиатуры).
7.Найти сумму целых положительных чисел, больших 20, меньших 100, кратных 3 и заканчивающихся на 2, 4 или 8.
8.В трехзначном числе зачеркнули старшую цифру, когда полученное двузначное число умножили на 7, то получили данное число. Найти это число.
9.Сумма цифр трехзначного числа кратна 7, само число также делится на 7. Найти все такие числа.
10.четырехзначных чисел выбрать те, у которых все четыре цифры различны.
11.Среди двузначных чисел найти те, которые делятся на число q, а сумма их цифр равна п (0 < п <= 18 ).
12.Дано четырехзначное число n. Выбросить из записи числа п цифры 0 и 5, оставив прежним порядок остальных цифр. Например, из числа 1509 должно получиться 19.
13.Дано натуральное число. Найти все его делители и их сумму.
14.данного натурального числа удалить все цифры А (А вводится с клавиатуры).
15.Найти количество делителей натурального числа. Сколько из них четных?
16.Найти все натуральные числа a, b, c из интервала от 1 до 20, для которых выполняется равенсто: a2 * b = c2
17.Произведение N первых нечетных чисел равно Р. Сколько сомножителей взято.
18.Даны натуральное N и последовательность A1, A2, …,A N, состоящая из N целых чисел. Получить последовательность, которая отличается от исходной тем, что все нечетные элементы удвоены. Оба массива вывести на экран.
19.Даны натуральное число N и последовательность A1, A2, …,A N. Определить количест-во вхождений N в данную последовательность (N – вводится с клавиатуры).
20.Даны натуральное число N и последовательность A1, A2, …,A N. Определить наимень-шее положительное среди A1, A2, …,A N и найти сумму отрицательных.
21.Дана последовательность из 50 чисел. Найти их среднее арифметическое. Найти сколько среди них отличных от последнего числа
22.Дана последовательность из n вещественных чисел. Вычислить сумму тех элементов последовательности, номера которых совпадают со значениями элементов последова-тельности.
23.Дана последовательность из n вещественных чисел. Все элементы последовательности с четными номерами, предшествующие первому по порядку элементу с наибольшим значением, домножить на него.
24.Дана последовательность из n вещественных чисел. Найти номер первого вхождения данного числа в последовательность или вывести сообщение, что такого числа нет.
25.Дана последовательность из n вещественных чисел. Найти номер последнего вхожде-ния данного числа в последовательность или вывести сообщение, что такого числа нет.
26.Дана последовательность из n действительных чисел. Получить числа b1,...,bn, где bi - среднее арифметическое всех элементов исходной последовательности, кроме i - того элемента.
27.Найти номер первого отрицательного элемента, делящегося на 5 с остатком 2.
28.Дана последовательность из n целых чисел. Заполнить ее с помощью генератора слу-чайных чисел. Найти: сумму положительных элементов, значения которых меньше 10; вывести индексы тех элементов, значения которых кратны 3 и 5.
29.Из элементов массива С сформировать массив А той же размерности по правилу: если номер четный, то Ai = Ci2, если нечетный, то Ai = 2Ci
30.Заменить последний положительный элемент массива А на второй элемент массива В. Вывести на экран оба массива.
31.Проверить является ли, введенное с клавиатуры число Х, меньше всех элементов мас-сива А.
32.Разделить все элементы с четными номерами на первый элемент, создав при этом но-вый массив. Вывести оба массива. Заполнение с помощью генератора случайных чи-сел.
33.Заменить элементы с нечетным номером на квадрат их номера. Вывести оба массива. Заполнение с помощью генератора случайных чисел.
34.Присвоить элементам массива В результат отношения суммы элементов массива А к соответствующим элементам массива А. Вывести оба массива. Заполнение с помощью генератора случайных чисел.
35.Заменить нулями элементы между минимальным и максимальным, кроме них самих.
36.Найти сумму элементов массива А, больших данного числа В (В вводить с клавиату-ры). Вывести массив А и сумму.
37.Поменять местами максимальный элемент массива и последний. При этом сформиро-вать новый массив. Вывести оба массива.
38.Вывести сумму номеров четных элементов, а так же сам исходный массив.
39.Найти сумму всех четных элементов массива, стоящих на четных местах. Вывести сумму и исходный массив.
Ivs
6.12.2002 16:27
Держи пока старую, что просил..........
Код
program For_Romario; uses crt; const n=10; var a:array[1..n] of integer; i,S,k:integer; begin ClrScr; S:=0; k:=0; writeln('====== Исходный массив ======'); for i:=1 to n do begin a[i]:=random(10)+1; write(' ',a[i]); S:=S+a[i]; {Суммируем элементы} end; for i:=1 to n-1 do if a[i]<>a[n] then k:=k+1; {Проверка на отличие от последнего} writeln; writeln('Среднее арифметическое: ',(S/n):0:2); writeln('Количество элементов отличных от последнего: ',k); readln; end.
Ivs
7.12.2002 1:00
Вместо рожиц следует читать "8 )"
{program N_1; var i1,i2,i3,A:integer; begin ClrScr; write('Input A -> ');readln(A); for i1:=1 to 9 do for i2:=0 to 9 do for i3:=0 to 9 do if (i1<>i2) and (i1<>i3) and (i2<>i3) then if (i1+i2+i3)=A then write(i1,i2,i3,' '); readln; end. }
{program N_2; var i1,i2,i3,N:integer; begin write('Input N -> ');readln(N); for i1:=1 to 9 do for i2:=0 to 9 do for i3:=0 to 9 do if i1+i2+i3=N then write(i1,i2,i3,' '); readln; end.}
{program N_3; var i,k,m integer; begin for i:=10 to 99 do begin k:=i; m:=k mod 10; k:=k div 10; if (m+k)+sqr(m+k)=i then write(i,' '); end; readln; end.}
{program N_4; var i,k:longint; begin for i:=100 to 999 do if (sqr(i) mod 1000) =i then write(i,' '); readln; end. }
{program N_5; var i:integer; begin for i:=1000 to 9999 do if (i mod 133=125) and (i mod 134=111) then write(i,' '); readln; end.}
{program N_6; var i,a,b,S:integer; begin write('Input A -> ');readln(a); write('Input B -> ');readln(B); S:=0; for i:=a to b do if i mod 4 =0 then S:=S+i; write('Summa : ',S); readln; end.}
{program N_7; var i:integer; begin for i:=21 to 99 do if (i mod 3=0) and (i mod 10=2) or (i mod 10=4) or (i mod 10=8) then write(i,' '); readln; end.}
{program N_8; var i:integer; begin for i:=100 to 999 do if (i mod 100)*7=i then begin write(i,' ');break; end; readln; end. }
{program N_9; var i1,i2,i3,k:integer; begin for i1:=1 to 9 do for i2:=0 to 9 do for i3:=0 to 9 do begin k:=i1*100+i2*10+i3; if ((i1+i2+i3) mod 7=0) and (k mod 7=0) then write(i1,i2,i3,' '); end; readln; end. }
{program N_10; var i1,i2,i3,i4:integer; begin for i1:=1 to 9 do for i2:=0 to 9 do for i3:=0 to 9 do for i4:=0 to 9 do if (i1<>i2) and (i1<>i3) and (i1<>i4) and (i2<>i3) and (i2<>i4) and (i3<>i4) then write(i1,i2,i3,i4,' '); readln; end. }
{program N_11; var i1,i2,q:integer; begin write('Input q -> ');readln(q); for i1:=1 to 9 do for i2:= 0 to 9 do if ((i1*10+i2) mod q=0) and (i1+i2>0) and (i1+i2<18) then write(i1,i2,' '); readln; end.}
{program N_12; var code:integer; n,i:longint; s:string; begin write('Input n -> ');readln(n); str(n,s); i:=1; while i<=length(s) do begin if (s[i]='0') or (s[i]='5') then begin delete(s,i,1);i:=i-1; end; i:=i+1; end; val(s,n,code); write(n); readln; end.}
{program N_13; var i,n,s:integer; begin write('Input n -> ');readln(n); S:=0; for i:=1 to n-1 do if (n mod i=0) then begin write(i,' '); S:=S+i;end; writeln; write('Summa=',S); readln; end.}
Ivs
7.12.2002 1:01
Ну что поехали дальше.......
{program N_14; var i,A,code:integer; n:longint; nn,aa:string; begin write('Input n -> ');readln(n); write('Input A -> ');readln(a); i:=1; str(n,nn);str(a,aa); while i<=length(nn) do begin if nn[i]=aa then begin delete(nn,i,1);i:=i-1;end; i:=i+1; end; val(nn,n,code); writeln(n); readln; end. }
{program N_15; var i,k,m,n:integer; begin write('Input n -> ');readln(n); k:=0;m:=0; for i:=1 to n-1 do if n mod i=0 then begin k:=k+1; if i mod 2 =0 then m:=m+1; end; writeln('Delit -> ',k); writeln('Delit Chet -> ',m); readln; end.}
{program N_16; var i,a,b,c:integer; begin for a:=1 to 9 do for b:=0 to 9 do for c:=0 to 9 do if (a in [1..20]) and (b in [1..20]) and (c in [1..20]) then if 2*a*b=2*c then writeln(a,' ',b,' ',c); readln; end. }
{program N_18; const n=10; var i:integer; a:array[1..n] of integer; begin for i:=1 to n do begin a[i]:=random(9)+1;write(a[i],' '); end; writeln; for i:=1 to n do begin if a[i] mod 2<>0 then a[i]:=a[i]*2; write(a[i],' '); end; readln; end.}
{program N_19; var i,n,k:integer; a:array[1..100] of integer; begin write('Input n (n<=100) -> ');readln(n); k:=0; for i:=1 to n do begin write('-> '); readln(a[i]); if a[i]=n then k:=k+1; end; write(k); readln; end. }
{program N_20; const n=10; var i,min,S:integer; a:array[1..n] of integer; begin S:=0; for i:=1 to n do begin a[i]:=random(10)-5; write(a[i],' '); end; min:=32767; for i:=1 to n do begin if a[i]>0 then if a[i]<min then min:=a[i]; if a[i]<0 then S:=S+a[i]; end; writeln; writeln('Min pol -> ',min); writeln('Summ otriz -> ',S); readln; end.}
{program N_21 uses crt; const n=10; var a:array[1..n] of integer; i,S,k:integer; begin ClrScr; S:=0; k:=0; for i:=1 to n do begin a[i]:=random(10)+1; write(' ',a[i]); S:=S+a[i]; end; for i:=1 to n-1 do if a[i]<>a[n] then k:=k+1; writeln; writeln('Sred arifmet: ',(S/n):0:2); writeln('Otl ot Poslednego: ',k); readln; end. }
{program N_22; const n=10; var i,k:integer; a:array[1..n] of real; begin k:=0; for i:=1 to n do begin write('-> '); readln(a[i]); end; for i:=1 to n do if a[i]=i then k:=k+1; write('Otvet: ',k); readln; end. }
{program N_23; const n=10; var a:array[1..n] of real; i,k:integer; max:real; begin for i:=1 to n do begin a[i]:=random(9)+1; write(a[i]:3 :1,' '); end; for i:=1 to n do if a[i]>max then begin max:=a[i];k:=i; end; for i:=1 to k-1 do if i mod 2=0 then a[i]:=a[i]*max; writeln; for i:=1 to n do write(a[i]:3 :1,' '); readln; end.}
{program N_24; const n=10; var a:array[1..n] of real; i,k:integer; r:real; begin k:=0; write('Input r -> ');readln( r ); for i:=1 to n do begin write('-> '); readln(a[i]); end; for i:=1 to n do if a[i]=r then begin k:=i;break; end; if k=0 then writeln('Net!') else writeln('N: ',k); readln; end. }
{program N_25; const n=10; var a:array[1..n] of real; i,k:integer; r:real; begin k:=0; write('Input r -> ');readln( r ); for i:=1 to n do begin write('-> '); readln(a[i]); end; for i:=n downto 1 do if a[i]=r then begin k:=i;break;end; if k=0 then writeln('Net!') else writeln('N: ',k); readln; end.}
{program N_26; const n=10; var a:array[1..n] of integer; b:array[1..n] of real; i,S,Sa:integer; begin S:=0; for i:=1 to n do begin a[i]:=random(9)+1; write(a[i],' '); S:=S+a[i]; end; writeln; for i:=1 to n do begin b[i]:=(S-a[i])/n-1; write(b[i]:1 :1,' '); end; readln; end. }
{program N_27; const n=10; var a:array[1..n] of integer; i,k:integer; begin for i:=1 to n do begin write('-> '); readln(a[i]); end; writeln; for i:=1 to n do if (a[i]<0) and (a[i] mod 5=2) then begin k:=i;break; end; write(k); readln; end.}
{program N_28; const n=40; var a:array[1..n] of integer; i,S:integer; begin S:=0; randomize; for i:=1 to n do begin a[i]:=random(100)-50; write(a[i],' '); if (a[i]>0) and (a[i]<10) then S:=S+a[i]; end; writeln; for i:=1 to n do if (a[i] mod 3=0) and (a[i] mod 5=0) then write(i,' '); writeln; write('Sred arifmet -> ',(S/n):1 :1); readln; end.}
Ivs
7.12.2002 1:03
И еще чуть чуть........
{program N_29; const n=10; var c,a:array[1..n] of integer; i:integer; begin for i:=1 to n do begin c[i]:=random(9)+1; write(c[i],' '); end; writeln; for i:=1 to n do begin if i mod 2=0 then a[i]:=c[i] div 2 else a[i]:=2*c[i]; write(a[i],' '); end; readln; end.}
{program N_30; const n=10; var a,b:array[1..n] of integer; i:integer; begin writeln; for i:=1 to n do begin a[i]:=random(9)-4; write(a[i],' '); end; writeln; for i:=1 to n do begin b[i]:=random(9)-4; write(b[i],' '); end; writeln; for i:=n downto 1 do if a[i]>0 then begin a[i]:=b[2];break; end; for i:=1 to n do write(a[i],' '); readln; end.}
{program N_31; const n=10; var a:array[1..n] of integer; x,i,k:integer; begin k:=0; for i:=1 to n do begin write('-> '); readln(a[i]); end; writeln; write('Input X -> ');readln(x); for i:=1 to n do if x<a[i] then k:=k+1; if k=n then write('DA') else write('NET'); readln; end.}
{program N_32; const n=10; var a:array[1..n] of integer; i:integer; begin randomize; for i:=1 to n do begin a[i]:=random(9)+1; write(a[i],' '); end; writeln; for i:=1 to n do begin if i mod 2=0 then a[i]:=a[i] div a[1]; write(a[i],' '); end; readln; end.}
{program N_33; const n=10; var a:array[1..n] of integer; i:integer; begin for i:=1 to n do begin a[i]:=random(9)+1; write(a[i],' '); end; writeln; for i:=1 to n do begin if i mod 2<>0 then a[i]:=sqr(i); write(a[i],' '); end; readln; end. }
{program N_34; const n=10; var a:array[1..n] of integer; b:array[1..n] of real; i,S:integer; begin for i:=1 to n do begin a[i]:=random(9)+1; write(a[i],' '); S:=S+a[i]; end; writeln; for i:=1 to n do begin b[i]:=S/a[i]; write(b[i]:1 :1,' '); end; readln; end. }
{program N_35; const n=10; var a:array[1..n] of integer; min,max,i,k,j:integer; begin randomize; for i:=1 to n do begin a[i]:=random(9)+1; write(a[i],' '); end; writeln; min:=a[1];max:=a[1]; for i:=1 to n do begin if a[i]<min then begin min:=a[i];k:=i;end; if a[i]>max then begin max:=a[i];j:=i;end; end; if k<j then for i:=k+1 to j-1 do a[i]:=0 else for i:=j+1 to k-1 do a[i]:=0; for i:=1 to n do write(a[i],' '); readln; end.}
{program N_36; const n=10; var a:array[1..n] of integer; b,i,S:integer; begin write('Input b -> ');readln(B); for i:=1 to n do begin a[i]:=random(9)+1; write(a[i],' '); if a[i]>b then S:=S+a[i]; end; writeln; write('Sum: ',S); readln; end. }
{program N_37; const n=10; var a,b:array[1..n] of integer; i,max,c,k:integer; begin for i:=1 to n do begin a[i]:=random(9)+1; write(a[i],' '); end; writeln; max:=a[1]; for i:=1 to n do if a[i]>max then begin max:=a[i];k:=i; end; c:=a[k];a[k]:=a[n];a[n]:=c; for i:=1 to n do begin b[i]:=a[i]; write(b[i],' '); end; readln; end. }
{program N_38; const n=10; var a:array[1..n] of integer; i,S:integer; begin S:=0; for i:=1 to n do begin a[i]:=random(20); write(a[i],' '); if (a[i] mod 2=0) and (a[i]<>0) then S:=S+i; end; writeln; write('Summa: ',S); readln; end. }
{program N_39; const n=10; var a:array[1..n] of integer; i,S:integer; begin S:=0; for i:=1 to n do begin a[i]:=random(20); write(a[i],' '); if (a[i] mod 2=0) and (a[i]<>0) and (i mod 2=0) then S:=S+a[i]; end; writeln; write('Summa: ',S); readln; end. }
Romario
7.12.2002 3:25
Спасибо, Ivs, сейчс буду во всём этом раздупляться :o :D Вопросик ;D Номера задач, решённых, такие же как номера в условии? Что-то я не узнаю где какая :-/
Romario
7.12.2002 6:54
Всё, разобрался... Но возникли вопросы у меня к тебе Ivs, ты писал, тебе и отвечать ;D :D ;)
Вот вопросики: 1)что за оператор break, что он делает, для чего и т.д... 2) оператор IN ... тоже самое... 3)и объясни пожалуйста задачи 17, 19, 22. Подробно, если можно, ты там так намутил... начинающим не понять... Вобщем построчно
Ещё раз спасибо за решение всех задач!
Ivs
7.12.2002 13:16
Ответы: break - это оператор выхода из цикла до его завершения. есть еще такие полезные операторы как: continue- выполнение следующей итерации цикла еще до завершения выполнения этой halt- остановка выполнеия всей программы, независимо где он расположен exit - выход из подпрограммы или если он расположен в основной части то завершает работу всей проги.
in [...] - это принадлежность множеству чисел или символов расположеных в квадратных скобках. его, на самом деле можно заменить например if i in [1..20] на if (i>=1) and (i<=20); так что можешь там исправить если надо.
Кстати единственная задача которую я не решил это N_17, так как не могу понять условия.....
Цитата
program N_19; var i,n,k:integer; a:array[1..100] of integer; begin write('Input n (n<=100) -> ');readln(n); {Вводим N} k:=0;{В k счетчик кол-ва вхождений} for i:=1 to n do begin {Заполнение массива с клавиатуры} write('-> '); readln(a[i]); if a[i]=n then k:=k+1; {проверяем на вхождение N в исходную последовательность} end; write(k); {Выводим кол-во вхождений} readln; end.
program N_22; const n=10; var i,k:integer; a:array[1..n] of real; begin k:=0; for i:=1 to n do begin {Заполнение массива с клавиатуры} write('-> '); readln(a[i]); end; for i:=1 to n do if a[i]=i then k:=k+1; {Если элемент массива равен своему индексу то увеличить счетчик} write('Otvet: ',k); {В "k" кол-во совпадений} readln; end.
Ivs
7.12.2002 23:21
И еще, Romario, 12 задачу лучше наверное переписАть, а то я там строки использовал, вобщем, не очень удачно как-то:
Цитата
program N_12; var a,b,c,d:longint; begin readln(a); b:=0;d:=1; while a>0 do begin c:=a mod 10; if (c<>0) and (c<>5) then begin b:=b+c*d; d:=d*10; end; a:=a div 10; end; writeln(B); readln; end.
Romario
8.12.2002 6:18
Вот ещё одна лабораторная, уже последняя : пока ;D
!!!При решении задач применять процедуры и функции!!!
Дан массив целых чисел (п=25), заполненный случайным образом числами из промежутка (-35,75). 1.Удалить из него все элементы, первая цифра которых четная. 2.Вставить число К1 после всех элементов, больших заданного числа, а число К2 – перед всеми элементами, кратными 3 (К1, К2 вводить с клавиатуры). 3.Перенести первые К элементов в конец, то есть: а[k+1], а[k+2], …, а[n], а[1], а[2], 4. …, а[k].
Ivs
11.12.2002 17:08
N_1:
Цитата
program N_1; uses crt; var i,n,j:integer; a:array[1..25] of integer;
function chet(m:integer):boolean; var ni:integer; begin while m<>0 do begin ni:=m mod 10; m:=m div 10; end; if ni mod 2=0 then chet:=true else chet:=false; end;
begin ClrScr; randomize; n:=25; for i:=1 to n do begin a[i]:=random(100)-35; write(a[i],' '); end; i:=1; while i<=n do begin if chet(a[i]) then begin for j:=i to n-1 do a[j]:=a[j+1]; n:=n-1; i:=i-1; end; i:=i+1; end; writeln; writeln; for i:=1 to n do write(a[i],' '); readln; end.
Программа написана с помощью функции, так что если что то можно переделать.... И еще во втором задании напонятно что там вводится что выводится, вводится ли заданное число или с потолка берется так что -- уточни.
Ivs
11.12.2002 19:38
N_3
Цитата
program N_3; uses crt; const n=25; var p,i,j,k:integer; a:array[1..n] of integer; begin ClrScr; Randomize; for i:=1 to n do begin a[i]:=random(110)-35; write(a[i],' '); end; writeln; write('Input k -> ');readln(k); for i:=1 to k do begin p:=a[1]; for j:=1 to n do a[j]:=a[j+1]; a[n]:=p; end; writeln; for i:=1 to n do write(a[i],' '); readln; end.
[shadow=red,left,300]Romario[/shadow], а в четвертом у тебя конечно оригинальные условия................................... ??? :o :-/
Romario
12.12.2002 4:32
Ivs, ты не понял это всё должна быть одна программа! 1- 1я функция, 2- 2я функия, и т.д . Это всё одна программа!
Tatjanka
28.11.2004 14:37
Помогите пожалуйста решить мне задачку. За ранее вам всем благодарна.
Мне нужно найти 15 первых чисел, которые делятся на 3.
Altair
28.11.2004 14:41
а новую темку создать нельзя было? Эх а какую тему вспомнили ..... Старые добрые времена, еще форум старый был....
Tatjanka а условие-то не полное, приведите примервходных\выходных данных
volvo
28.11.2004 14:42
Tatjanka Зачем же поднимать такие старые темы? Можно было создать новую...
Код
var i: integer; begin for i := 1 to 15 do write( i*3:5 ); writeln end.
Altair
28.11.2004 14:44
volvo, неужели так?
я думал, что дына последовательность чисел, найти среди них делящиеся на 3. А то слишком просто что-то... уже ведь сессия скоро ... кто такие задачи решает в это время года?
Tatjanka
28.11.2004 14:49
Oi spasibo vam ogromnoe sei4as poprobuju eto v programme napisat
Tatjanka
28.11.2004 14:54
Vse polu4ilos!!!!!!!!! volvo spasibo. Vse tak prosto a ja probovala 4erez for i mod
Tatjanka
28.11.2004 15:00
Eshe u menja ostalas odna zada4ka s massivom. Esli ja vas ne o4en obremenjaju, to pomogite plz.
dan A(10) i B(10) 4islovoi massiv. Naiti novie elementi massiva C(10) , esli (A1+B10,A2+B9....A10+B1)
volvo
28.11.2004 15:03
Tatjanka
Код
var i: integer; a, b, c: array[1 .. 10] of integer; begin { здесь ввод массивов A и B } ...
{ вычисление массива C } for i := 1 to 10 do c[i] := a[i] + b[11 - i]; end.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.