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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 24.05.2011, 09:32   #1
92Edik
Пользователь
 
Регистрация: 22.05.2011
Сообщений: 17
Радость не могу найти ошибку

условие-поменять местами первую и последнюю цифры числа!






program masz25;
var a:array[1..100] of integer;
i,k,n:integer;
begin
WRITELN ('введите размер массива');
READLN (n);
write('введите числа');
WRITELn;
for i:=1 to 3 do
readln(a[i]);
k:=a[1];
a[1]:=a[3];
a[n]:=k;
WRITELN;
For i:=1 to 100 do
WRITEln (a[i]);
end.
92Edik вне форума
Старый 24.05.2011, 09:47   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ошибка в том, что это решение абсолютно другой задачи. Вы ввели n чисел (не факт даже, что они однозначные) в массив, присвоили переменной к первое из них, потом этому первому числу присвоили третье и заменили n-ое число в массиве на к, после чего вывели весь массив.

Раз уж массив решили использовать, то эту задачу можно решить с помощью строк (string). Либо с помощью чисел можно: понадобится остаток (mod) от деления на 10 для последней цифры и деление (div) в цикле на 10 для первой цифры.

Cо строками проще и наверно именно это и надо, раз тема про массивы.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 24.05.2011 в 09:58.
Alex11223 вне форума
Старый 24.05.2011, 10:15   #3
New man
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 774
По умолчанию

Код:
function Change(i:integer):integer;
var n:ineger;
     j:integer;
begin
    n:=10;
    m:=1;
   while i div n<>0 do 
       n:=n*10;
       
   n:=n div 10;
   j:=i div n;
   i:=i mod 10 *n+i mod n;
   i:= i div 10*10+j
   result:=i;
end;
a.k.a. Angelicos Phosphoros
Мой сайт
New man вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
НЕ могу найти ошибку T.A.T.A.R.I.N Паскаль, Turbo Pascal, PascalABC.NET 2 06.03.2011 10:45
не могу найти ошибку trad Помощь студентам 1 18.01.2011 23:04
Не могу найти ошибку T-dayne Помощь студентам 4 11.10.2010 11:51
Не могу найти ошибку в БД Bilargo Помощь студентам 0 26.11.2009 14:00
Не могу найти ошибку. Picaso18 Паскаль, Turbo Pascal, PascalABC.NET 3 19.01.2009 17:05