lila
Новичок
|
помогите пожалуйста уже сколько не могу решить.нужно определить тип постройки, который клиенты заказывали более 2 раз! [Program kr1; uses CRT; Type stroen = record stoimost:real; Tip: string[20]; klient:record kredit:real; Vkb:real; dolg:real; End; Firma:string[30]; end; Var a: stroen; f1:file of stroen; i:integer; kod_tovara:integer; max:real; begin assign(f1,'d:\stroenie.txt'); { rewrite(f1); writeln('Vvedite danie stroeni9I'); for i:=1 to 3 do begin with a do begin writeln('klient'); write('kredit'); readln (klient.kredit); write('Cymma vklada v bank'); readln(klient.vkb); write('Nevuplachena9I Cymma'); readln(klient.dolg); write('stoimost'); readln(stoimost); write('Tip stroeni9I'); readln(tip); write('Firma-podporiadchik'); readln(Firma); end; end; write(f1,a); close(f1);} clrscr; reset(f1);]
|
Всего сообщений: 2 | Присоединился: декабрь 2010 | Отправлено: 21 дек. 2010 0:38 | IP
|
|
GODZILLA
Новичок
|
есть наброски программы, но как сделать обратный ход здесь незнаю. program mas; uses crt; var mas: array [1...8] of integer; i: integer; begin clrscr; randomize; writeln ('Элементы массива'); writeln; for i:=1 to 8 do begin mas :=-256+random(513); write [mas, '']; end; writeln; end.
|
Всего сообщений: 3 | Присоединился: декабрь 2010 | Отправлено: 21 дек. 2010 16:38 | IP
|
|
GODZILLA
Новичок
|
ошибка в строчке write [mas , ''];
|
Всего сообщений: 3 | Присоединился: декабрь 2010 | Отправлено: 21 дек. 2010 16:41 | IP
|
|
Korvet
Новичок
|
Цитата: Oleg002 написал 18 дек. 2010 23:46 1) Вычислить сумму "S" с заданной точностью "E".Считать,что заданная точность достигнута,если очередное слагаемое по модулю меньше "E". 2)Определить номер и величину последнего учитываемого слагаемого. S= -cosx + cos2x / 2^2 +...+(-1)^n * cosnx / n^2 +... x=П/4(Пи на четыре) E=0.1, E=0.001.
Program s_001; uses crt; var x,e,sum,an,Sn,Snn:real; n:integer; begin clrscr; writeln('vvedite e,x'); readln (e,x); Sum:=0; n:=1; an:=-1; Sn:=cos(n*x)/(n*n)*an; while abs(sn)>=e do begin sum:=sum+Sn; inc(n); an:=an*(-1); Snn:=Sn; sum:=sum+Sn; Sn:=cos(n*x)/(n*n)*an; end; Writeln('Summa=',sum:3:3); Writeln('poslednee slagaemoe=',snn:3:3); Writeln(n-1); Readln; end. P.S. В твоем варианте вроде и сумму не правильно считало. Строка Sn:=cos(n*x)/n*n*an; не получается n^2 Разделить на n и умножить на n -- n сокращается.
|
Всего сообщений: 40 | Присоединился: ноябрь 2009 | Отправлено: 22 дек. 2010 13:50 | IP
|
|
Korvet
Новичок
|
Цитата: GODZILLA написал 20 дек. 2010 17:47 помогите, пожалуйста, написать программу: которая генерирует массив из 8 целых чисел из диапазона [-256;256] и меняет порядок элементов в массиве на обратный.
Program mass; uses crt; var mas: array [1..8] of integer; i:byte; h:Integer; begin clrscr; randomize; for i:=1 to 8 do begin mas :=-256+random(513); write (mas[ i ],' '); end; Writeln; for i:=1 to 4 do begin h:=mas; mas:=mas[9-i]; mas[9-i]:=h; end; for i:=1 to 8 do Write(mas[ i ],' '); readln; end.
|
Всего сообщений: 40 | Присоединился: ноябрь 2009 | Отправлено: 22 дек. 2010 16:21 | IP
|
|
natashenka
Новичок
|
Помогите пожалуйста с 2 задачами! . Напишите программу на языке Pascal, которая выведет все степени числа (N+1), не большие 30000. Число N – номер варианта Дано целое положительное число A, проверить является ли оно степенью числа (N+1). N – номер варианта. вариант у меня 2. заранее большое вам спасибо!!!!!
|
Всего сообщений: 5 | Присоединился: декабрь 2010 | Отправлено: 22 дек. 2010 16:41 | IP
|
|
Korvet
Новичок
|
Program Natashenka1; var n,pow,step:Integer; begin write('Vvedite N '); Readln(n); Step:=0; pow:=1; while pow<=30000 do begin Writeln(' N v stepeni ',step,' = ',pow,' '); inc(step); pow:=pow*(n+1); end; readln; end. Program Natashenka2; var a,n,pow,step:Integer; begin write('Vvedite N '); Readln(n); write('Vvedite A '); Readln(a); Step:=0; pow:=1; while pow<a do begin inc(step); pow:=pow*(n+1); end; if pow=a then write('A=',n+1,'^',step,' ') else Write('a ne javljaetsja stepenju ',n+1); readln; end.
|
Всего сообщений: 40 | Присоединился: ноябрь 2009 | Отправлено: 22 дек. 2010 18:08 | IP
|
|
margo112233
Новичок
|
процедуры и функции. даны 2 натуральных числа.Выяснить в каком из них сумма цифр больше.(определить функцию для расчета суммы цифр натурального числа)
|
Всего сообщений: 3 | Присоединился: декабрь 2010 | Отправлено: 22 дек. 2010 20:54 | IP
|
|
Korvet
Новичок
|
Цитата: lila написал 21 дек. 2010 0:38 помогите пожалуйста уже сколько не могу решить.нужно определить тип постройки, который клиенты заказывали более 2 раз!
Program kr1; uses CRT; Type stroen = record stoimost:real; Tip: string[20]; klient:record kredit:real; Vkb:real; dolg:real; End; Firma:string[30]; end; Var a: stroen; b:array [1..10] of stroen; f1:file of stroen; i,j,n,k,m:byte; tip:array [1..10] of string[20]; h:string[20]; f:boolean; begin assign(f1,'d:\stroenie.txt'); {rewrite(f1); writeln('Vvedite danie stroeni9I'); for i:=1 to 10 do with a do begin writeln('klient'); write('kredit'); readln (klient.kredit); write('Cymma vklada v bank'); readln(klient.vkb); write('Nevuplachena9I Cymma'); readln(klient.dolg); write('stoimost'); readln(stoimost); write('Tip stroeni9I'); readln(tip); write('Firma-podporiadchik'); readln(Firma); write(f1,a); end; close(f1);} clrscr; reset(f1); n:=0; m:=1; while not(eof(f1)) do begin inc( n ); read(f1,b[ n ]); end; close(f1); k:=0; for i:=1 to n do begin h:=b[ i ].tip; f:=true; for j:=1 to k do if tip[ j ]=h then f:=false; if f then for j:=i+1 to n do if b[ j ].tip=h then inc(m); if m>=3 then begin inc(k); tip[k]:=h; end; m:=1; end; for i:=1 to k do Writeln(tip[ i ]); Readln; end. Может, некрасиво, но работает.
|
Всего сообщений: 40 | Присоединился: ноябрь 2009 | Отправлено: 22 дек. 2010 21:03 | IP
|
|
Korvet
Новичок
|
Цитата: margo112233 написал 22 дек. 2010 20:54 процедуры и функции. даны 2 натуральных числа.Выяснить в каком из них сумма цифр больше.(определить функцию для расчета суммы цифр натурального числа)
Program sumzif; function sumz(a:LongInt):Byte; var b,sum:byte; begin sum:=0; while a>0 do begin b:=a mod 10; sum:=sum+b; a:=a div 10; end; sumz:=sum; end; var n1,n2:Longint; begin write('N1='); readln(n1); write('N2='); readln(n2); if sumz(n1)> sumz(n2) then writeln('suma zifr ',n1,' > ','summy zifr ',n2) else writeln('suma zifr ',n2,' > ','summy zifr ',n1); readln; end. Внимательно при вводе. максимальное значение типа LongInt 2147483647
|
Всего сообщений: 40 | Присоединился: ноябрь 2009 | Отправлено: 22 дек. 2010 21:44 | IP
|
|
|