Задачки по програмированию [Delphi]

Автор Shush, 16 сентября 2007, 13:16:33

0 Пользователи и 1 Гость просматривают эту тему.

Shush

помогите решить задачки

1.Написать процедуру.
Заполнить матрицу А размером NxN по следующему правилу
А [I;j]=[sin(exp(i)+j^10]где [] операция округления до ближайшего целого.
 i-строки,j-стобцы


2.Написать функцию возвращающую значение 4х наименьших эклементов из целочисленного массива А NxN(N задано)



3.Написать процедуру,меняющую местами столбцы целочисленной матрицы NxNотносительно среднего столбца,в случае если  N-нечетное и заполняющую матрицу нолями в противном случае

Pomi

На своих ошибках учатся, а на чужих навариваются

ICQ#5111280:CORP#101196:

Прежде чем спрашивать пройдите на http://ln.com.ua/~openxs/articles/smart-questions-ru.html
Seagal ?!

ScaN

нерешабельные задачи.

Ты на каком курсе? ;-)

Shush

на 3)
а почему нерешабельные???
я просто нифига не програмист)не мое это и все

ScaN

Ну тогда ясн. Просто многих 9классников эти задачи не заставят задуматься. Могу на паскале начиркать, т.к. других языков не знаю.

Lynx

так на нем и надо, хорошо, что не в программировании тему создал))

Human-oid

Цитата: Lynx от 16 сентября 2007, 23:29:28так на нем и надо,..
написано "Описание: Delphi" , хотя там близко ;)

Shush

Люди помагите,задачи завтра нада до 3х часов

AntonFox

Лучше все таки самому разобраться потому как:
1. При сдаче задач обычно еще и спрашивают что там и как и почему именно так. Если писал не ты - косяк обязательно всплывет.
2. Дальше будут еще более серьезные задачки, и если щас не врубаешься, то дальше только покупать и предмет и задачи.... Дорого тебе это обойдется, очень дорого...

Для затравки предлагаю тебе три файлика на паскале, каждый из которых примерно соответствует необходимому тебе. Нада перегнать их в Дельфю и немного доделать.
Кстати задачки ОЧЕНЬ легкие. Даже щас, спустя куча времени после института, в уме за минуту набросал алгоритмы для всех трех задачек...
Учи матчасть, дядя! ))))
Кто цяй не пьет, тот цьмо. (с) Конфуций<br />...уж лучше слыть нулями и стебаться, чем гением не быть, но называться! © bob@ kрnemо.ru<br />

Shush

мне завтра сдать и от меня отстанут)
так то разберусь,а вот писать самому это фиг)

Human-oid

Цитата: AntonFox от 17 сентября 2007, 23:51:57...
1. При сдаче задач обычно еще и спрашивают что там и как и почему именно так. Если писал не ты - косяк обязательно всплывет...
поэтому я на зачёте людям писал ещё и каменты за доп. плату :)

AntonFox

А я сам учился и писал эти задачки, а потом пришло время и я принимал эти задачки у других курсов, так как стал работать лаборантом. Поэтому насмотрелся всякого....
Было время за деньги делал задачки, но с некоторыми людьми и комменты не помогали настолько они были далеки от программирования... Особенно девушки.
Кто цяй не пьет, тот цьмо. (с) Конфуций<br />...уж лучше слыть нулями и стебаться, чем гением не быть, но называться! © bob@ kрnemо.ru<br />

Vader

Хм, и вот это на ОТЗИ в САМГУ проходят на 3-ем курсе?
Ппц...
Мы задачки на двумерные массивы, поиск минимума в 10 классе решали, правда решали их единицы :)
Если тебе дано предугадывать ход мыслей человека, случайностей не будет. © Пила

ScaN

На самом деле такие задачи учать решать в 3 и 5 классе, а не в 10; но немногие учителя математики и информатики об этом догадываются ;)

Даешь оупэнсурс:
решение:
[spoiler]

program whatsup;
const nmax=10;
type mtrx=array[1..nmax,1..nmax] of integer;
var a:mtrx;
    way,n:byte;
    min1,min2,min3,min4:integer;

procedure fllmtrx (var a:mtrx); {procedura dlya pervoi zadachi}
var i,j:byte;

function power (const base:real; const index:byte):real;
{vozvedenie "base" v stepen' "index"}
var result:real;
    i:byte;
begin
    result:=1;
    for i:=1 to index do result:=result*base;
    power:=result;
end;

begin
     for i:=1 to n do
         for j:=1 to n do
             a[i,j]:=round( sin( exp(i)+power(j,10) ) );
end;

{procedura dlya vtoroi zada4i}
procedure fourmins (const a:mtrx; var min1,min2,min3,min4:integer);
var i,j:byte;

begin
     min1:=a[1,1];
     min2:=a[1,1];
     min3:=a[1,1];
     min4:=a[1,1];
     for i:=1 to n do
         for j:=1 to n do
         begin
              if a[i,j]              begin
                   min4:=min3;
                   min3:=min2;
                   min2:=min1;
                   min1:=a[i,j];
              end
              else if a[i,j]              begin
                   min4:=min3;
                   min3:=min2;
                   min2:=a[i,j];
              end
              else if a[i,j]              begin
                   min4:=min3;
                   min3:=a[i,j];
              end
              else if a[i,j]              begin
                   min4:=a[i,j];
              end;
         end;
end;

{procedura dlay tret'ei zadachi}
procedure trnsornil (var a:mtrx);
var i,j:byte;
{procedura menyaet znacheniyami x i y}
procedure swp(var x,y:integer);
var z:integer;
begin
     z:=x;
     x:=y;
     y:=z;
end;

begin
 if n mod 2 = 0 then
   for i:=1 to n do
       for j:=1 to n do
           a[i,j]:=0
 else
   for i:=1 to n do
       for j:=1 to n div 2 do
           swp(a[i,j],a[i,n-j+1]);
end;

{vvod matrici}
procedure inptmtrx (var a:mtrx);
var i,j:byte;
begin
     repeat
     Writeln('nmax = ',nmax);
     Write('Please, enter n = ');
     readln(n);
     until n<=nmax;
     write('Please, enter matrix'' elements: ');
     for i:=1 to n do
     begin
          for j:=1 to n do
          begin
               read(a[i,j]);
               write(' ');
          end;
          writeln;
     end;
end;
{vivdo matrici}
procedure outptmtrx (var a:mtrx);
var i,j:byte;
begin
     Writeln('Results: ');
     for i:=1 to n do
     begin
          for j:=1 to n do
               write(a[i,j],' ');
          writeln;
     end;
end;


begin
  writeln('-----------------------------------------------------------------------------');
  inptmtrx(a);

  writeln('Please, select the problem (1,2 or 3):');
  writeln('1:  task-1');
  writeln('2:  task-2');
  writeln('3:  task-3');
  readln(way);
  case way of
  1: begin
       fllmtrx(a);
       outptmtrx(a);
     end;
  2: begin
       fourmins(a, min1,min2,min3,min4);
       writeln(min1,'  ',min2,'  ',min3,'  ',min4);
     end;
  3: begin
       trnsornil(a);
       outptmtrx(a);
     end;
  end;

  readln;
end.[/spoiler]

Shush

ну я учился в обычной школе а не лицее и информатики у нас тоже не было....
поэтому я нихрена и не знаю...