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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.10.2009, 16:44   #1
10Rabbit
Пользователь
 
Регистрация: 09.10.2009
Сообщений: 17
По умолчанию Перевернуть матрицу

Вводится масив из 60 элементов, нужно поменять значения эелементов в обратном порядке(то есть первый должен стать последним и т.д.) без использования дополнительных масивов.
10Rabbit вне форума Ответить с цитированием
Старый 09.10.2009, 16:46   #2
Вавел из ГМТУ
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 896
По умолчанию

30 руб и она твоя.

Если конечноже нету наработок и сам ты делать не хочешь...
Вавел из ГМТУ вне форума Ответить с цитированием
Старый 09.10.2009, 16:49   #3
Cnoob
 
Регистрация: 09.10.2009
Сообщений: 9
По умолчанию

25 руб - и твоя
Cnoob вне форума Ответить с цитированием
Старый 09.10.2009, 16:51   #4
Вавел из ГМТУ
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 896
По умолчанию

Цитата:
Сообщение от Cnoob Посмотреть сообщение
25 руб - и твоя
Я Вам уступлю, Сударь.
Вавел из ГМТУ вне форума Ответить с цитированием
Старый 09.10.2009, 16:57   #5
10Rabbit
Пользователь
 
Регистрация: 09.10.2009
Сообщений: 17
По умолчанию

делать я сам хочу нароботки есть но не верные!
Вобщем на без корысную помощь надееться безпонт
10Rabbit вне форума Ответить с цитированием
Старый 09.10.2009, 16:58   #6
Вавел из ГМТУ
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 896
По умолчанию

Если есть наработки, то клади.
Вавел из ГМТУ вне форума Ответить с цитированием
Старый 09.10.2009, 17:01   #7
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Не мой код, но всё же вот:
Код:
(* Perevorachivaem massiv
27.09.2004*)
uses Crt;
const
  MAX = 10; {zadaem razmer massiva}
var
  mas           : array[1..MAX] of integer; {opredeliaem massiv celih chisel}
  i             : byte; {dopolnitelnie peremennie}
  loc           : integer;

procedure Vivod;     {vivod massiva na ekran}
var
  il            : byte;

begin
  for il:=1 to MAX do Write (mas[il],' ');
  Writeln;
end;

begin
  ClrScr; {ochishaem ekran}
  for i:=1 to MAX do begin {formiruem massiv, koroche vnosim v massiv
    dannie}
    Write('Vvedi ',i,' element :>');
    Readln(mas[i]);
  end;

  Writeln('Ishodniy massiv:');
  Vivod;

  for i:=1 to MAX div 2 do begin {nu tipa meniaem mestami :) }
    loc:=mas[i];
    mas[i]:=mas[MAX-i+1];
    mas[MAX-i+1]:=loc;
  end;

  Writeln('Konechiy massiv:');
  Vivod;
  ReadKey; {oshidanie nashatia na knopku}
end.
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 09.10.2009, 17:01   #8
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

1 цикл 1 переменная того же типа что элемент массива, цикл с 0 до (количество элементов массива div 2)-(количество элементов массива mod 2)

в цикле действия
1)записываеш в переменную элемент массива порядковый номер кторого равен счётчику цикла
2) записываеш в элемент массива порядковый номер которого равен счётчику цикла данные из элемента массива порядковый номер которога равен ((количество элементов массива)- счётчик цикла)
3) записываеш в элемент массива порядковый номер которого равен ((количество элементов массива)- счётчик цикла) данные из переменной

понятно?

Последний раз редактировалось vovk; 09.10.2009 в 17:09. Причина: поправился
vovk вне форума Ответить с цитированием
Старый 09.10.2009, 17:03   #9
10Rabbit
Пользователь
 
Регистрация: 09.10.2009
Сообщений: 17
По умолчанию

тут масив из 10 что бы вводить быстрее
var
mas: array [1..10] of integer;
i:integer;
t,j,k:integer;
begin
writeln('Vvedite massiv');
for i:=1 to 10 do
readln(mas[i]);
writeln('ishodniy massiv');
for i:=1 to 10 do
write(mas[i],' ');
for i:=0 to 10 do
begin
mas[10-i]:=mas[1+i];
end;
writeln;
writeln('itogoviy massiv');
for i:=1 to 10 do
write(mas[i],' ');
readln;
end.
10Rabbit вне форума Ответить с цитированием
Старый 09.10.2009, 17:22   #10
Вавел из ГМТУ
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 896
По умолчанию

{Для оформления кода у нас есть тег CODE}


Рассмотрим:

Код:
For i := 0 To 10 Do
Begin
   Mas[10 - i] := Mas[1 + i];
End;
Не надо проходиться по всему массиву при перестановке.
Да и сам переворот выглядит непонятно..
Надо значала запомнить значение Mas[10 - i], а потом только присваивать Mas[1 + i].
Вавел из ГМТУ вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевернуть число. MAKEDON Общие вопросы C/C++ 3 23.04.2017 15:16
Перевернуть и разделить. Много Sac Microsoft Office Excel 4 24.08.2009 16:25
Перевернуть значения цикла SwiP PHP 14 01.04.2009 17:36
Объясните пожалуйста как можно считать значения в этом файле в вектор, 4 -ую матрицу, 6-ую матрицу ciaonataha Помощь студентам 1 30.03.2009 20:57
Перевернуть строку Манжосов Денис :) Общие вопросы Delphi 13 03.12.2008 04:37