Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.12.2011, 16:42   #1
sonecka
Новичок
Джуниор
 
Регистрация: 29.12.2011
Сообщений: 1
По умолчанию (Паскаль)Написание комментариев к программному коду

Мальчики помогите кто понимает Паскаль,а то я в нём совсем запуталась
Нужны комментарии к готовым программам.Вот они:
Program lab2;
uses wincrt; {подключение модуля}
Var
t,t1:String;
v:String;
n,m,k,k1,i,col:Byte;
w:array[1..10] of string;
Begin
t:='Если для всех трёх сторон произведение положительно';
WriteLn('Исходный текст:" ',t,'"');
t1:=t;
n:=0;
Repeat
k:=1
i:=i+1;{накопление цикла}
m:=Length(t1);{считаем кол-во слов}
k1:=Pos(' ',t1);{ищет первое пустое вхождение в строку т1}
If k1<>0 {если не равно нулю}
Then
Begin
v:=Copy(t1,k,k1-1); {из строки т1 копируем к с длинойк+1}
Delete(t1,k,k1);
End
Else
v:=Copy(t1,k,m);
w[i]:=v;
Until k1=0;{цикл хуячит пока не нарушиться это условие}
col:=i;

for i:=1 to col do
writeln( w[i]);

for i:=1 to col do
if copy(w[i],length(w[i]),1)='х'
then k1:=k1+1;
WriteLn(t,k1);
End.
И вторая:
Подпрогр
Program zadacha;
uses wincrt;

Const

N=5;

Type
M1=array[1..6,1..6] of real;
M2=array[1..36] of real;
var
i,j,k: Byte;
S1:real;
a:M1;


Procedure VvodB( m,n:integer; Var B1:M1 );
Var i,j: byte;
Begin
For i:=1 to m do For j:=1 to n do
Begin
B1[i,j]:=15*random;
End;
End;

Procedure VyvodB ( m,n:integer; Var B1:M1 );
Var i,j: byte;
Begin
For i:=1 to m do
Begin For j:=1 to n do Write(B1[i,j]:5:2,' '); WriteLn; End;
End;


Function Sum(B1:M1; m,n:integer):real;
Var i:byte;
Sm:real;
begin
Sm:=0;
For i:=1 to m do
Sm:=Sm+B1[i,i];
Sum:=Sm;
end;

Procedure Pereschet(B1:M1; m,n:integer);
var min,max,miny,maxy,maxx,minx:real;
begin
min:=B1[1,1]; max:=B1[1,1]; minX:=1; maxX:=1; minY:=1; maxY:=1;
for i:=1 to m do
for j:=1 to n do
begin
if B1[i,j]>max
then
begin max:=B1[i,j]; maxX:=i; maxY:=j; end;
if B1[i,j]<min
then begin min:=B1[i,j]; minX:=i; minY:=j; end;
end;

{writeln ( ' Минимальный элемент массива равен ', min:5:2);
writeln ( ' Он расположен в ' ,minX:1:0,' строке и в ' ,minY:1:0, ' столбце ' );
writeln ( ' Максимальный элемент массива равен ', max:5:2 );
writeln ( ' Он расположен в ',maxX:1:0,' строке и в ' ,maxY:1:0,' столбце ' ); }
B1[i,j]:=B1[i,j]*(max-min);


End;



Begin

WriteLn('Лабораторная работа № 5');

WriteLn(' использование подпрограмм для обработки массивов ');

WriteLn('Выполнила студентка группы ЭУП 09-3-1 Кондратович Соня ');

Randomize;

Writeln('Исходная матрица');

vvodB(6,6,a);
vyvodB(6,6,a);
S1:=Sum(a,6,6);
writeln;
writeln (S1:5:2);
if Int(a[1,1]/S1)=a[1,1]/S1
then begin {пересчет}
Pereschet()


end else begin {формир} end;

end;
begin
b[i,j]:=b[i,j]*(max-min);
writeln (' Элементы матрицы пересчитанные по правилу b[i,j]=b[i,j]*(max-min)');
writeln (b[i,j]);
end; }
{else
beg}

{k:=0;
for i:=1 to 6 do
begin
sum:=0;
for j:=1 to 6 do
sum=sum+b[i,j];
c[i]=sum;
end;


writeln('Полученный вектор');
for i:=1 to k do
begin
write(c[i]:4:0,' ');
end;}

{end;}


end.

Заранее буду благодарна
sonecka вне форума Ответить с цитированием
Старый 29.12.2011, 18:28   #2
gaw4
Форумчанин
 
Регистрация: 31.05.2010
Сообщений: 407
По умолчанию

если построчно , то
icq 584 308 611
icq 584 308 611
gaw4 вне форума Ответить с цитированием
Старый 29.12.2011, 18:55   #3
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Сейчас попробуем!
Помог - жми на весы!
ByAlex89@mail.ru

Последний раз редактировалось ByAlex; 29.12.2011 в 19:14.
ByAlex вне форума Ответить с цитированием
Старый 29.12.2011, 19:04   #4
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Код:
Program lab2;
uses wincrt; {подключение модуля}

program Project1;

{$APPTYPE CONSOLE}

var
  t,t1:String;
  v:String;
  m,k,k1,i,col:Byte;
  w:array[1..10] of string;
Begin
  t:='When i grow up i want be famouse!';
  WriteLn('Text:" ',t,'"');
  t1:=t;
  i:=0;
  Repeat
    k:=1; // указатель на начало цикла
    i:=i+1; // накопление цикла
    m:=Length(t1); // в m передаем длину строки m
    k1:=Pos(' ',t1); // ищет первое пустое вхождение в стоку t
    If k1<>0 then  // если пустое вхождение есть то
    Begin
       v:=Copy(t1,k,k1-1); // из строки t1 копируем слово от k до первого пустого вхождения -1
       Delete(t1,k,k1); // из строки t1 удаляем слово от k до первого пустого вхождения
    End
    Else
       v:=Copy(t1,k,m); // иначе копируем всю строку
    w[i]:=v; // в массив добавляем слово
  Until k1=0; // цикл выполняется пока k1 не равно 0
  col:=i; // количество слов
  for i:=1 to col do
    writeln(w[i]);  // вывод слов из массива построчно
  for i:=1 to col do
    if copy(w[i],length(w[i]),1)='õ' then
      k1:=k1+1;
  WriteLn(t,k1); // вывод строки t и переменной k1
  readln;
End.
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Привязка комментариев к новостям zmey1 PHP 8 16.08.2011 12:05
Виджет комментариев vkontakte kpachbiu JavaScript, Ajax 8 17.01.2011 18:04
Работа комментариев в WordPress amdbodia WordPress и другие CMS 3 25.09.2010 15:09
Добавление комментариев Amen PHP 9 20.10.2009 19:34