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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2009, 07:32   #1
n1ce > Kuzia
Пользователь
 
Регистрация: 07.01.2009
Сообщений: 60
Восклицание Помогите доделать задачу

Помогите отредактировать задачу нужно сделать через обратную матрицу и ТЕКСТ

Даны натуральное число n, символы S1,..., Sn.Определить число
вхождений
в последовательность S1,...,Sn группы букв:
ABA
(желательно через обратную матрицу)

program SYMBOL;
uses CRT;
var n,i,SC:integer;
S:ARRAY [1..255] OF STRING;
begin
CLRSCR;
writeln ('vvedite n');
readln(n);
for I := 1 to N do
READLN(S[i]);
SC:=0;
for i := 1 to n do
if (S[i]='A') AND (S[I+1]= 'B') AND (S[I+2]='A') then // ABA - ЛАТИНСКИЕ
SC:=SC+1;
WRITELN;
writeln('COL-VO', SC);
readln;
end.
n1ce > Kuzia вне форума Ответить с цитированием
Старый 08.01.2009, 07:36   #2
n1ce > Kuzia
Пользователь
 
Регистрация: 07.01.2009
Сообщений: 60
По умолчанию

ВОт еще одна тоже помогите доделать:
дана действительная квадратная матрица,порядка n, все элементы которой различны.Найти наибольший элемент среди стоящих на главной и побочной диоганалях и поменять его местами с элементом стоящим на пересечении этих диоганалей.(через двумерный масив)
program MATRIX;
uses CRT;
var
n,i,j:integer;
imax,jmax:integer;
max1:real;
max: array[1..2] real;
S:ARRAY [1..1000,1..1000] OF REAL;
begin
CLRSCR;
writeln ('vvedite n');
readln(n);
max1:=0;
for I := 1 to N do
FOR J :=1 TO N DO
WRITELN('S[',j,j,']=');
READLN(S[i,j]);
for i := 1 to n do
if s[i,i]>max1 then
begin
max:=s[i,i];
imax:=i;
jmax:=i;
end;
n:=n+1;
for i := 1 to n do
begin
n:=n-1;
if s[i,n]> max1 then
begin
max:=s[i,j];
imax:=i;
jmax:=n;
end;
end;
max[1]:=max1;
i:=trunc(n/2)+1;
max[2]:= s[i,i];
s[imax,jmax]:=max[2];
s[i,i]:= max[1];
for i:=1 to n do
for j:= 1 to n do
writeln('matrix:')
WRITELN('s[',i,j,']=',s[i,j]);
readln;
end.
___
n1ce > Kuzia вне форума Ответить с цитированием
Старый 08.01.2009, 11:42   #3
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию 1) Я ее понял так

Код:
program symbol;
uses crt;
var
 n,i,SC : byte;
 S : array [1..255] of char;
 st : string[3];
begin
  clrscr;
  writeln ('Vvedite kol-vo simvolov: ');
  readln (n);
  for i:=1 to n do read (S[i]);
  SC:=0;
  st:='';
  for i:=1 to n-2 do
  begin
    st:=S[i]+S[i+1]+S[i+2];
    if st='ABA' then SC:=SC+1
  end;
  readln;
  writeln ('KOL-VO= ',SC);
  readln;
end.
capta1n вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите доделать задачу motaro Фриланс 3 09.06.2008 19:59
Помогите доделать задачу!!!! Vincenzo Паскаль, Turbo Pascal, PascalABC.NET 4 11.05.2008 09:35
помогите доделать задачу по массиву braza Паскаль, Turbo Pascal, PascalABC.NET 7 06.05.2008 09:37
Помогите доделать задачу на класс molodzo Общие вопросы C/C++ 2 20.11.2007 09:31