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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.12.2010, 17:48   #1
Munich
 
Регистрация: 28.12.2010
Сообщений: 5
По умолчанию Задачи на языке pascal. Двумерные массивы и строки.

Задачи очень простые, но у меня вызывают трудность ввиду моей безграмотности
Буду оочень признателен! На кону зачет!D:<

Двумерные массивы:
1) Ввести массив A[5,5], и в каждом столбце найти минимальный элемент.
2) Дана матрица A[5,5]. Получить новую матрицу путем деления всех элементов данной матрицы на ее наибольший элемент.

Строки:
1) Ввести два слова одинаковой длины и составить третье слово так: сперва берется первая буква первого слова, затем первая буква второго слова, затем вторая буква первого слова, затем вторая буква второго слова и т.д.
2) Ввести число и поменять местами вторую и пятую цифры этого числа.
3) Ввести фразу и перевернуть каждое слово этой фразы.

Последний раз редактировалось Munich; 28.12.2010 в 18:11.
Munich вне форума Ответить с цитированием
Старый 28.12.2010, 18:00   #2
Munich
 
Регистрация: 28.12.2010
Сообщений: 5
По умолчанию

В первой задаче не могу сделать так, чтобы все минимальные в столбцах находились с одного захода. получается что-то вроде этого:

a[1,1]:=min1;
for i:=2 to 5 do if a[i,1]<min1 then a[i,1]:=min1;
a[1,2]:=min2;
for i:=2 to 5 do if a[i,2]<min2 then a[i,2]:=min2;
...
a[1,5]:=min5;
for i:=2 to 5 do if a[i,5]<min5 then a[i,5]:=min5;
writeln(min1, min2, min3, min4, min5,' - minimalnie elementi v stolbcah');
end.

Во второй задаче я, конечно, могу найти наиб. элемент:
a[1,1]:=max;
for i:=1 to 5 do
for j:=1 to 5 do
if a[i,j]>max then a[i,j]:=max;
Но как разделить все элементы матрицы на max и вывести полученную матрицу?

А со строковыми типами я совсем не разобрался D:
Munich вне форума Ответить с цитированием
Старый 28.12.2010, 18:12   #3
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Строки:
1)
Код:
Readln (str1);
Readln (str2);
for i := 1 to length (str1) do
    write (str1[i], str2[i]);
2) Метод решения через строку
Код:
Readln (chislo);
str(chislo, str_chislo);
temp := str_chislo[2];
str_chislo[2] := str_chislo[5];
str_chislo[5] := temp;
Val (str_chislo, chislo, 0);
writeln (chislo);
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 28.12.2010, 18:16   #4
Munich
 
Регистрация: 28.12.2010
Сообщений: 5
По умолчанию

Благодарствую!
Munich вне форума Ответить с цитированием
Старый 28.12.2010, 18:26   #5
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Цитата:
чтобы все минимальные в столбцах находились с одного захода.
А если так
Код:
for j := 1 to 5 do
begin
    min := a[1,j];
    for i := 2 to 5 do
    begin
        if min > a[i,j] then min := a[i,j];
    end;
    writeln ('В ' j, '-том столбце минимальный элемент равен ', min);
end
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 28.12.2010, 18:29   #6
Munich
 
Регистрация: 28.12.2010
Сообщений: 5
По умолчанию

возможно..
щас проверим
Munich вне форума Ответить с цитированием
Старый 28.12.2010, 18:30   #7
k0tone
Пользователь
 
Аватар для k0tone
 
Регистрация: 09.11.2010
Сообщений: 99
По умолчанию

Поиск минимальных элементов через один цикл:
Код:
program test;
uses crt;
const n=5;
var a:array [1..n, 1..n] of integer;
    i,j,min:integer;
begin
clrscr;
randomize;
for i:=1 to n do
  begin
    for j:=1 to n do
      begin
        a[i,j]:=random(21)-10;
        write(a[i,j]:4);
      end;
    writeln;
  end;
writeln;
for i:=1 to n do
  begin
    min:=a[1,i];
    for j:=2 to n do
      if min>a[j,i] then min:=a[j,i];
    write(min:4);
  end;
readln;
end.
Если я вам помог - нажмите на весы пот аватаркой!
k0tone вне форума Ответить с цитированием
Старый 28.12.2010, 18:31   #8
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Цитата:
как разделить все элементы матрицы на max и вывести полученную матрицу?
Ну если матрица типа real, то можно и так
Код:
for i := 1 to 5 do
begin
    for j := 1 to 5 do
    begin
        NewA[i,j] := a[i,j]/max;
        Write (NewA[i,j]:4:3);
    end;
    writeln;
end;
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 28.12.2010, 18:34   #9
Munich
 
Регистрация: 28.12.2010
Сообщений: 5
По умолчанию

Спасибо! Работает :DD
Munich вне форума Ответить с цитированием
Старый 28.12.2010, 18:40   #10
k0tone
Пользователь
 
Аватар для k0tone
 
Регистрация: 09.11.2010
Сообщений: 99
По умолчанию

Цитата:
Дана матрица A[5,5]. Получить новую матрицу путем деления всех элементов данной матрицы на ее наибольший элемент.
Код:
program test;
uses crt;
const n=5;
var a:array [1..n, 1..n] of real;
    i,j,k,l:integer;
    max:real;
begin
clrscr;
randomize;
for i:=1 to n do
  begin
    for j:=1 to n do
      begin
        a[i,j]:=i-j;
        write(a[i,j]:9:2);
      end;
    writeln;
  end;
writeln;
max:=a[1,1];
for i:=1 to n do
  begin
    for j:=1 to n do
      if max<a[i,j] then
        begin
          max:=a[i,j];
          k:=i;
          l:=j;
        end;
  end;
write(max:9:2);
writeln;
writeln;
for i:=1 to n do
  begin
    for j:=1 to n do
      begin
        a[i,j]:=a[i,j]/a[k,l];
        write(a[i,j]:9:2);
      end;
    writeln;
  end;
readln;
end.
Если я вам помог - нажмите на весы пот аватаркой!
k0tone вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи на языке паскаль в делфи 8ball Помощь студентам 12 10.04.2011 19:32
Решение задачи на языке Pascal FishOK Помощь студентам 4 23.11.2010 14:34
Задачи на языке С++ xetron Помощь студентам 6 09.11.2010 14:05
Прошу помощи в решении задачи на языке Free Pascal Refenement Помощь студентам 7 21.12.2008 15:27
Здраствуйте!Зачетные задачки на списки...))) Помогите,плиз! Никита35 Помощь студентам 1 24.04.2008 14:02