Выпускники КубГу\'13))

Объявление

Друзья! Оставляйте ссылки на свои страницы во Вконтакте, не все Вас по никам знают)

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



исходники...

Сообщений 31 страница 56 из 56

31

ПЯТАЯ!!!

var a:array[1..100,1..100]of integer;
    b:array[1..100]of boolean;
    i,f,f1,f2,j,n,m,s,l,k,g:integer;
begin
     readln(n,m);
     for i:=1 to n do
         for j:=1 to m do
             readln(a[i,j]);
     for i:=1 to n do
     begin
          k:=0;
          for j:=1 to m do
          begin
               g:=i+j;
               f:=1;
               f1:=1;
               while f<g do
               begin
                    f2:=f1;
                    f1:=f;
                    f:=f1+f2;
               end;
               if (g=f)and(a[i,j]mod 7=0) then k:=k+1;
          end;
          b[i]:=k mod 2=0;
     end;
     for i:=1 to n do
         writeln(b[i]);
     readln;
end.

0

32

только задачи для второй подгруппы)) это меня тянет на первенство))

0

33

Ай молодца, ай талантище. Держи конфетку.

0

34

ай)) ням-ням)) вкуснотыща)) пасибо)

0

35

{Задача на проверку симметричности строки}

var s:string;
    f:boolean;
    i,n:integer; {описание переменных}
begin
     readln(s); {Ввод строки}
     f:=true; {Присвоение переменной f значения true}
    for i:=1 to length(s) do {пока переменная i принимает значения от 1 до length(s), выполнять следующие действия}
         if s[i]<>s[length(s)-i+1] then f:=false; {проверка являются ли соттветствующие символы от начала и конца строки равными}
     if f then writeln('simm')
     else writeln('nesimm'); {вывод ответа}
     readln;
end.

































{если количество * кратно трем то удалить все буквы после которых следуют точки}

var s:string;
    i,k:integer; {описание переменных}
begin
     readln(s); {ввод строки
     k:=0; {обнуление счетчика}
     for i:=1 to length(s) do {просмотр строки по символу}
         if s[i]='*' then k:=k+1;{если символ строки равен * то счетчик увеличивается на единицу}
     i:=1;
     if (k mod 3)=0 then {если количество * кратно трем то}
        while i<>length(s) do {пока не достигнем конца строки}
        begin
             if s[i+1]='.' then delete(s,i,1) {если следующий элемент точка, то удалить данный}
             else i:=i+1; {иначе перейти к проверке следующего символа}
        end;
     writeln(s);{вывод окончательной строки}
     readln;
end.





























{если первый символ равен последнему то заменить все группы букв 'abc' на '+'}

var s:string;
    r:integer; {Описание переменных}
begin
     readln(s); {Ввод строки}
     r:=1;
     if s[1]=s[length(s)] then {если первый символ строки равен последнему то}
          while r<>0 do {пока r неравно 0 выполнять}
          begin
               r:=pos('abc',s); {нахождение первого вхождения фрагмента 'abc' в строку s}
               if r<>0 then {если фрагмент 'abc' входит в s то}
               begin
                    delete(s,r,3); {удалить этот фрагмент}
                    insert('+',s,r); {вставить на его место '+'}
               end;
          end;
     writeln(s); {вывод результата}
     readln;
end.




























{если строка не симметрична и длина простое число то вставить после каждого '-' символ '+'}

var s:string;
    f,t:boolean;
    i:integer; {описание переменных}
begin
     readln(s); {ввод строки}
     f:=true;
     for i:=2 to length(s)-1 do
         if length(s) mod i=0 then f:=false; {проверкак длины строки на простоту}
     t:=true;
     for i:=1 to length(s) do
         if s[i]<>s[length(s)-i+1] then t:=false; {проверка строки на симметричность (см задачу один)}
     if f and not(t) then {если длина простая и строка несимметрична то}
     begin
          for i:=1 to length(s) do {просмотр строки по символам}
              if s[i]='-' then {если символ '-' тогда}
              insert('+',s,i+1); {вставить после него символ '+'}
     end;
     writeln(s);{вывод результата}
     readln;
end.

























{если длина строки четна то вставить в её середину заданную подстроку}

var s,s1:string; {описание переменных}
begin
     readln(s);
     readln(s1);
     if length(s)mod 2 =0 then insert(s1,s,(length(s)div 2)+1);{если длина первой строки четна то вставить ей в середину вторую строку}
     writeln(s); {вывод результата}
     readln;
end.

0

36

А мне вот интересно тут хоть кто-нить с 11ой группы сидит? Мне вообще есть смысл выкладывать свои исходники? :question:

0

37

ты лучше б не спрашивал а подтягивал своих))

0

38

Аццкий Админчег!, ну брат тебе делать нефиг... что энтеров понатыкал-то? Типа чтобы сразу распечатывать и место для заметок было? =)

Джон Кеннеди, "Ну немного алкоголя и т.д. не мне тебе рассказывать"... По Психее врываемся или просто строчка понравилась?))

0

39

это чтобы не сливалось в сплошной текст)) во всяком случае в три утра это всё сливалось))

0

40

Ну и алкаш!)

0

41

Гы... знакомые задачки.... Pascal...два года учебы в "Старте" и удостоверение о начальном профессиональном.. эх.... хорошее было время...

0

42

№1
var s:string;
    i,k:integer;
begin
     readln(s);
     k:=0;
     for i:=1 to length(s) do
         if (s[i]<='9')and(s[i]>='0') then k:=k+1;
     if k>0 then
        begin
             i:=1;
             while i<>length(s)+1 do
                   if (s[i]<='9')and(s[i]>='0') then delete(s,i,1)
                   else i:=i+1;
        end
     else
        begin
             i:=1;
             while i<>length(s) do
               begin
                 if s[i]='*' then
                    begin
                         delete(s,i,1);
                         insert('abc',s,i);
                    end;
                 i:=i+1;
               end;
        end;
     writeln(s);
     readln;
end.

№2
var s:array[1..100]of string;
    n,p,i,j,k:integer;
begin
     readln(n);
     p:=0;
     for i:=1 to n do
         readln(s[i]);
     for i:=1 to n do
         begin
              k:=0;
              for j:=1 to length(s[i]) do
                  if (s[i][j]<'a')or(s[i][j]>'z') then
                      k:=k+1;
              if (k=0)and(length(s[i])mod 2=0) then p:=p+1;
         end;
     writeln(p);
     readln;
end.

0

43

№1

var a:array[1..100]of integer;
    i,n,k,j:integer;
function prost(a:integer):boolean;
begin
     prost:=true;
     for j:=2 to a-1 do
         if (a mod j)=0 then prost:=false;
end;
begin
     readln(n);
     for i:=1 to n do
         readln(a[i]);
     k:=0;
     for i:=1 to n do
         if (prost(a[i]))and(not(prost(i))) then k:=k+1;
     writeln(k);
     readln;
end.

0

44

№1.1

var a:array[1..100]of integer;
    i,n,k,j:integer;
    f,t:boolean;
procedure prost(a:integer; var f:boolean);
begin
     f:=true;
     for j:=2 to a-1 do
         if (a mod j)=0 then f:=false;
end;
begin
     readln(n);
     for i:=1 to n do
         readln(a[i]);
     k:=0;
     for i:=1 to n do
     begin
          prost(a[i],f);
          prost(i,t);
          if (f)and(not t) then k:=k+1;
     end;
     writeln(k);
     readln;
end.

0

45

№2

var a:array[1..100,1..100]of integer;
    i,j,n,m,s,k:integer;
function sov(a:integer):boolean;
begin
     k:=0;
     for i:=1 to a-1 do
         if (a mod i)=0 then k:=k+i;
     if k=a then sov:=true
     else sov:=false;
end;
begin
     readln(n,m);
     for i:=1 to n do
         for j:=1 to m do
             readln(a[i,j]);
     s:=0;
     for i:=1 to n do
         for j:=1 to n do
             if sov(a[i,j])and(not sov(i+j)) then s:=s+a[i,j];
     writeln(s);
     readln;
end.

0

46

№2.1

var a:array[1..100,1..100]of integer;
    i,j,n,m,s,k,l:integer;
    f,t:boolean;
procedure sov(a:integer; var f:boolean);
begin
     k:=0;
     for l:=1 to a-1 do
         if (a mod l)=0 then k:=k+l;
     if k=a then f:=true
     else f:=false;
end;
begin
     readln(n,m);
     for i:=1 to n do
         for j:=1 to m do
             readln(a[i,j]);
     s:=0;
     for i:=1 to n do
         for j:=1 to n do
         begin
              sov(a[i,j],f);
              sov(i+j,t);
              if f and not(t) then s:=s+a[i,j];
         end;
     writeln(s);
     readln;
end.

0

47

№3

var a:array[1..100]of integer;
    i,n,j,max,k:integer;
function qv(a:integer):boolean;
begin
     qv:=false;
     for j:=1 to a do
         if j*j=a then qv:=true;
end;
begin
     readln(n);
     for i:=1 to n do
         readln(a[i]);
     k:=0;
     max:=0;
     for i:=1 to n do
         if qv(a[i]) then k:=k+1
         else
         begin
              if k>max then max:=k;
              k:=0;
         end;
     if max<k then max:=k;
     writeln(max);
     readln;
end.

0

48

№3.1

var a:array[1..100]of integer;
    i,n,j,max,k:integer;
    f:boolean;
procedure qv(a:integer; var f:boolean);
begin
     f:=false;
     for j:=1 to a do
         if j*j=a then f:=true;
end;
begin
     readln(n);
     for i:=1 to n do
         readln(a[i]);
     k:=0;
     max:=0;
     for i:=1 to n do
     begin
         qv(a[i],f);
         if f then k:=k+1
         else
         begin
              if k>max then max:=k;
              k:=0;
         end;
     end;
     writeln(max);
     readln;
end.

0

49

type el=record;
            ves:integer;
            prov:char;
            naz:string;
        end;
var a,b:array[1..100] of el;
      c:el;
      i,k,l,n:integer;
begin
readln (n);
  for i:=1 to n do
    begin
      readln (a[i].naz);
      readln (a[i].prov);
      readln (a[i].ves);
    end;
k:=1;
  for i:=1 to n do
    if a[i].prov=0 then
      begin
        b[k].naz:=a[i].naz;
        b[k].ves:=a[i].ves;
        k:=k+1;
      end;
  for i:=1 to n do
    begin
      writeln (b[i].naz);
      writeln (b[i].ves);
    end;
k:=1;
  for i:=1 to n do
    if a[i].prov='+' then
      begin
        b[k].naz:=a[i].naz;
        b[k].ves:=a[i].ves;
        b[k].prov:='+';
        k:=k+1;
      end;
  repeat
   l:=0;
   for i:=1 to n do
     if b[i].ves<b[i+1].ves then
       begin
         c.ves:=b[i+1].ves;
         c.naz:=b[i+1].naz;
         b[i+1].ves:=b[i].ves;
         b[i+1].naz:=b[i].naz;
         b[i].ves:=c.ves;
         b[i].naz:=c.naz;
         l:=l+1;
       end;
  until l=0;
  for i:=1 to n do
    begin
      writeln (b[i].naz);
      writeln (b[i].ves);
      writeln (b[i].prov);
    end;
readln;
end.

0

50

type tovar=record;
       naz,str:record;
       ex:integer;
var a:array[1..100] of tovar;
      S:string;
      i,n,v:integer;
begin
readln (S);
readln (n);
  for i:=1 to n do
    begin
      readln (a[i].naz);
      readln (a[i].str);
      readln (a[i].ex);
    end;
v:=0;
  for i:=1 to n do
    if a[i].naz=S then
      begin
        writeln (a[i].str);
        v:=v+a[i].ex;
      end;
writeln (v);
readln;
end.

0

51

type tov=record;
       str,naz,sort:string;
       ves,cen:integer;
       end;
var a:array[1..100] of tov;
      i,n,S:integer;
begin
readln (n);
  for i:=1 to n do
    begin
      readln (a[i].naz);
      readln (a[i].sort);
      readln (a[i].str);
      readln (a[i].ves);
      readln (a[i].cen);
    end;
S:=0;
  for i:=1 to n do
    begin
      S:=S+a[i].ves;
      S:=S div n;
    end;
  for i:=1 to n do
    if a[i].ves<=S then writeln (a[i].str);
readln;
end.

0

52

Задачи по рекурсии

Заранее извиняюсь, что не ничего не разграничивал, потому что не думал , что для форума... а Харченко все поймет :D
Также нет последней задачи(про симметричность)... я ее лично сделать пока не смог... если сделаю , то выложу :)

1.1)
var
x,y:integer;
function NOD(a,b:integer):integer;
begin
if a=0 then NOD:=b else NOD:=NOD(b mod a,a);
end;
begin
readln(x,y);
writeln(NOD(x,y));
readln;
end.

1.2)

var
x,y,z:integer;
procedure NOD(a,b:integer; var z:integer);
begin
if a=0 then z:=b else NOD(b mod a,a,z);
end;
begin
readln(x,y);
NOD(x,y,z);
writeln(z);
readln;
end.

Отредактировано Oreadian (2008-11-14 00:02:28)

0

53

2.1)

var
x,y:integer;
function C(m,n:integer):longint;
begin
if (m=0) or (m=n) then c:=1 else c:=c(m,n-1)+c(m-1,n-1);
end;
begin
readln(x,y);
writeln(c(x,y));
readln;
end.

2.2)
var
x,y:integer; z:longint;
procedure C(m,n:integer; var z:longint);
var z1,z2:longint;
begin
if (m=0) or (m=n) then z:=1 else
begin
c(m,n-1,z1); c(m-1,n-1,z2);
z:=z1+z2;
end;
end;
begin
readln(x,y);
c(x,y,z);
writeln(z);
readln;
end.

0

54

3.1)

type
mas=array[1..10] of integer;
var
a:mas;
n,i:integer;
function M(a:mas; n:integer):integer;
begin
if n=0 then m:=0 else
begin
if a[n] mod 2 =0 then m:=a[n] + m(a,n-1) else m:=0+m(a,n-1);
end;
end;
begin
readln(n);
for i:=1 to n do readln(a[i]);
writeln(m(a,n));
readln;
end.

3.2)

type
mas=array[1..100] of integer;
var
a:mas;
n,i,z:integer;
procedure M(a:mas; n:integer; var z:integer);
var z1,z2:integer;
begin
if n=0 then z:=0 else
begin
if a[n] mod 2 =0 then
begin
M(a,n-1,z1);
z:=a[n]+z1;
end
else
begin
M(a,n-1,z2);
z:=0+z2;
end;
end;
end;
begin
readln(n);
for i:=1 to n do readln(a[i]);
m(a,n,z);
writeln(z);
readln;
end.

0

55

4.1)

type
mas=array[1..100] of integer;
var
n,i:integer;
a:mas;
function max(a:mas;n:integer):integer;
begin
if n=1 then max:=a[1]
else
begin
if a[n]>a[n-1] then
begin
a[n-1]:=a[n];
end;
max:=max(a,n-1);
end;
end;
begin
readln(n);
for i:=1 to n do readln(a[i]);
writeln(max(a,n));
readln;
end.

4.2)

type
mas=array[1..100] of integer;
var
n,i:integer;
a:mas;
procedure max(a:mas;n:integer; var z:integer);
var z1:integer;
begin
if n=1 then z:=a[1]
else
begin
if a[n]>a[n-1] then
begin
a[n-1]:=a[n];
end;
max(a,n-1,z1);
z:=z1
end;
end;
begin
readln(n);
for i:=1 to n do readln(a[i]);
max(a,n,z);
writeln(z1);
readln;
end.

0

56

5.1)

var
n:integer;
function c(n:integer):integer;
begin
if n div 10 = 0 then c:=n else
c:=c(n div 10) + n mod 10;
end;
begin
readln(n);
writeln(c(n));
readln;
end.

5.2)

var
n,z:integer;
procedure c(n:integer;var z:integer);
begin
if n div 10 = 0 then z:=n else
begin
c(n div 10,z);
z:=z+n mod 10;
end;
end;
begin
readln(n);
c(n,z);
writeln(z);
readln;
end.

0



Рейтинг форумов | Создать форум бесплатно