я буду периодически выкладывать такие полезные вещи как исходники некоторых задач...
исходники...
Сообщений 1 страница 30 из 56
Поделиться22008-10-22 21:29:07
Аминь.
Поделиться42008-10-22 21:52:14
Я бы мог свои исходники повыкладывать...
Но они на C++ все... вам такие наверно не интересны до третьего курса???
Поделиться52008-10-22 22:58:08
Норм я изучил немного С++  Выкладывай. Я по Pascal позже закину))
 Выкладывай. Я по Pascal позже закину))
Поделиться62008-10-23 13:38:16
Ммм... предложение - сделать неск разделов, по языкам. а то как-то не в тему С++ рядом с Паскалем... Вы потом еще сюда асм приплетете и пхп. оно нам надо? нет. Админчеги! примите к сведению идею  
Поделиться72008-10-23 19:04:42
только меняйте имена переменных!!!!!!!!!!!!!!!!!!
а то мне потом монтифик будет от Харченко!!!!!!!!!!!!!!
ЗАДАЧА №1 для 15 группы на завтра...
var i,j,l,n,s:integer;
    a:array[1..100,1..100]of integer;
    f:boolean;
begin
     readln(n);
     for i:=1 to n do
         for j:=1 to n do
             readln(a[i,j]);
     s:=0;
     for i:=1 to n do
         for j:=1 to n do
         begin
              f:=true;
              for l:=2 to a[i,j]-1 do
                  if (a[i,j] mod l)=0 then f:=false;
              if f then s:=s+a[i,j];
         end;
     writeln(s);
     readln;
end.
Поделиться82008-10-23 19:23:15
На первый раз простенькое....
Программа вычисляет число e как сумму бесконечного ряда 1+1/1!+1/2!+1/3!... может кому будет интересно... еще могу выложить вычисление интеграла как площади криволинейной трапеции методом разбиения на прямоугольники и прямоугольные трапеции со сравнением в конце двух этих методов и той точности, которую они дают.
=====
#include <stdio.h> // подключаем стандартную библиотеку ввода/вывода
float fact (int n) //описание вещественной фукнции, вычисляющей факториал для заданного числа n и возвращающей значение 1/n!
{
  int i;
  float factor=1.0;
  for (i=1;i<=n;i++) factor=factor*i;
  factor=1/factor;
  return factor;
}
main ()
{
  float e=1; //присваиваем этой переменной начальное значение 1
  int n;
  for (n=1;n<=100;n++) e=e+fact(n); // прибавляем к начальному значению числа 1/n!
  printf("e=%f",e);
}
===
Согласитесь, разумно достаточный стиль Сишных языков куда приятней этих громоздких паскалевских begin ... end... for .. to - беееееееее
Отредактировано Лирический физик (2008-10-23 19:37:01)
Поделиться92008-10-23 19:52:11
ППц такую прогу и я могу)). Давай чё нить круче!))) (Кстати в чём пишешь проги?)
Поделиться102008-10-23 20:00:09
gcc под Linux i386.. ну у нас линух в компьютерном классе =)
вообще то смысл темы не те проги, которые мы можем.. как хобби, а те, которые встречаются при обучении.. а они все относительно легкие, хотя то же число Эйлера далеко не все могут сдать по такому алгоритму, у всех разный уровень.
а так для себя я в последнее время не пишу, раньше нравилось Visual C# .NET, программил для интереса.....
Отредактировано Лирический физик (2008-10-23 20:02:19)
Поделиться112008-10-23 20:08:50
вторая задача для 15 группы
var a:array[1..100,1..100]of integer;
    i,j,k,n,f,f1,f2:integer;
begin
     readln(n);
     for i:=1 to n do
         for j:=1 to n do
             readln(a[i,j]);
     k:=0;
     for i:=1 to n do
         for j:=1 to n do
         begin
              if ((i<j)and(i>n-j+1))or((i>j)and(i<n-j+1)) then
              begin
                   f:=1;
                   f1:=1;
                   while f<a[i,j] do
                   begin
                        f2:=f;
                        f:=f1+f2;
                        f1:=f2;
                   end;
                   if a[i,j]=f then k:=k+1;
              end;
         end;
         writeln(k);
         readln;
end.
Поделиться122008-10-23 20:09:34
третья
var a:array[1..100,1..100]of integer;
    i,j,n,pr,s,k:integer;
begin
     readln(n);
     for i:=1 to n do
         for j:=1 to n do
             readln(a[i,j]);
     pr:=1;
     for i:=1 to n do
         for j:=1 to n do
         begin
              s:=0;
              for k:=1 to i+j-1 do
                  if ((i+j) mod k)=0 then s:=s+k;
              if s=i+j then pr:=pr*a[i,j];
         end;
         writeln(pr);
         readln;
end.
Поделиться132008-10-23 20:10:09
четвертая
var a:array[1..100,1..100]of integer;
    i,j,n,max,min:integer;
begin
     readln(n);
     for i:=1 to n do
         for j:=1 to n do
             readln(a[i,j]);
     max:=a[1,1];
     min:=a[1,1];
     for i:=1 to n do
         for j:=1 to n do
         begin
              if a[i,j]>max then max:=a[i,j];
              if a[i,j]<min then min:=a[i,j];
         end;
     for i:=1 to n do
         for j:=1 to n do
             if (a[i,j]<=25)and(a[i,j]>=5) then a[i,j]:=a[i,j]+max-min;
     for i:=1 to n do
         for j:=1 to n do
             writeln(a[i,j]);
     readln;
end.
Поделиться142008-10-23 20:10:37
пятая
var a:array[1..100,1..100]of integer;
    i,j,n,t,k:integer;
begin
     readln(n);
     for i:=1 to n do
         for j :=1 to n do
             readln(a[i,j]);
     for i:=1 to n do
         for j:=1 to n do
         begin
              k:=0;
              t:=a[i,j];
              while t<>0 do
              begin
                   k:=k+(t mod 10);
                   t:=t div 10;
              end;
              if ((k mod 2)=0)and(i<j) then writeln(a[i,j]);
         end;
         readln;
end.
Поделиться152008-10-23 20:11:38
всё))) благодарность приносить в стеклянных бутылках с пивом))))))
Поделиться162008-10-23 20:30:42
Я этим пользоваться не собираюсь, от меня благодарностей не жди)
Поделиться172008-10-23 20:38:23
gcc под Linux i386.. ну у нас линух в компьютерном классе =)
Круто!
вообще то смысл темы не те проги, которые мы можем.. как хобби, а те, которые встречаются при обучении..
Я это и имел ввиду))
Кстати ща сам буду осваивать FreeBSD 7. Кто со мной??
Поделиться182008-10-23 20:45:48
от тебя и не жду)) они сами знают кто должен))
Поделиться192008-10-23 20:53:48
И что, приносят обычно?)
Поделиться202008-10-23 21:07:46
Кстати ща сам буду осваивать FreeBSD 7. Кто со мной??
Free BSD - не советую....
Ее только поставить в стандартном варианте в несколько раз сложнее, чем User-friendly Linux, там сложная логика подготовки разделов на харде и т.п.
Есть правда ламерский вариант PC-BSD.. год назад такое было, щас чо-то не слышно.. но может еще есть =)
Прог не так уж много прикладных под нее... чисто серверная ОС, да и то на многих серверах просто линуху используют, хотя BSD вроде как имеет более высокий класс защищенности...
Поделиться212008-10-23 21:22:03
У меня есть три системы BSD: DesktopBSD 1.6, PC-BSD 7(не порадовал((( ), и FreeBSD 7. Взял первоисточник)). Я знаю что это трудная система. Но я хочу её осилить! У мня 2 цели)) Пройти 1 -й курс (потом легче будет))) и изучить FreeBSD.))
Отредактировано Alex9138 (2008-10-23 21:24:00)
Поделиться222008-10-23 21:41:02
Да... первый курс все таки сложней пройти, чем Free BSD, это факт ....
Да еще... осторожней надо быть в конфигурировании на этих системах (линух в том числе), например та же убунта кучу винтов поубивала из-за того, что старт-стоп каждые 3 секунды делала почему-то.... бывает.
Отредактировано Лирический физик (2008-10-23 21:42:36)
Поделиться232008-10-23 21:49:53
А я про историю Ubuntы знаю  Так чё то мы тут на оффтопили)). Предлагаю создать тему про Unix.
 Так чё то мы тут на оффтопили)). Предлагаю создать тему про Unix.
Поделиться242008-10-23 21:58:26
Создавайте, коллега =)
Поделиться252008-10-23 22:14:13
сделал я вам две темы... пишите скока влезет)))))))
Поделиться272008-10-24 18:50:42
задание на завтра))
задача номер 1 для 1 подгруппы 15 группы...
var a:array[1..100,1..100]of integer;
    b:array[1..100]of boolean;
    i,j,n,m,s,l:integer;
    f:boolean;
begin
     readln(n,m);
     for i:=1 to n do
         for j:=1 to m do
             readln(a[i,j]);
     for j:=1 to m do
     begin
          s:=0;
          for i:=1 to n do
          begin
               f:=true;
               for l:=2 to a[i,j]-1 do
                   if (a[i,j] mod 2)=0 then f:=false;
               if f then s:=s+1;
          end;
          b[j]:=s<3;
     end;
     for j:=1 to m do
         writeln(b[j]);
     readln;
end.
Поделиться282008-10-24 19:03:02
задача номер 2 для 1 подгруппы 15 группы...
var a:array[1..100,1..100]of integer;
    b:array[1..100]of integer;
    i,j,n,m,s,l,k,c:integer;
    f:boolean;
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
          f:=true;
          k:=0;
          for j:=1 to m do
          begin
               s:=0;
               c:=a[i,j];
               while c<>0 do
               begin
                    s:=s+(c mod 10);
                    c:=c div 10;
               end;
               if (s mod 2)=0 then k:=k+1;
          end;
          b[i]:=k;
     end;
     for i:=1 to n do
         writeln(b[i]);
     readln;
end.
Поделиться292008-10-24 19:18:18
третья))
var a:array[1..100,1..100]of integer;
    b:array[1..100]of integer;
    i,j,n,m,s,l,x,y:integer;
    f:boolean;
begin
     readln(x,y);
     writeln;
     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
          f:=true;
          s:=1;
          for j:=1 to m do
          begin
               if x>y then
               begin
                  if (a[i,j]<=x)and(a[i,j]>=y)and((i+j)mod 2=1) then
                  s:=s*a[i,j];
               end
               else
               begin
                  if (a[i,j]>=x)and(a[i,j]<=y)and((i+j)mod 2=1) then
                  s:=s*a[i,j];
               end;
          end;
          b[i]:=s;
     end;
     for i:=1 to n do
         writeln(b[i]);
     readln;
end.
Поделиться302008-10-24 19:56:47
четвертая!
var a:array[1..100,1..100]of integer;
    b:array[1..100]of boolean;
    i,j,n,m,s,l,max,k:integer;
    f:boolean;
begin
     readln(n,m);
     for i:=1 to n do
         for j:=1 to m do
             readln(a[i,j]);
     max:=a[1,1];
     for i:=1 to n do
         for j:=1 to m do
             if a[i,j]>max then max:=a[i,j];
     for j:=1 to m do
     begin
          k:=0;
          for i:=1 to n do
              if a[i,j]=max then k:=k+1;
          if k>1 then b[j]:=true;
     end;
     for j:=1 to m do
         writeln(b[j]);
     readln;
end.



