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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 13.12.2011, 07:47   #1
macOSx
 
Регистрация: 11.12.2011
Сообщений: 3
По умолчанию Проблема с задачей

Просьба помочь с программами.
Задано целое число N (1<=N<=2147483647).
Требуется написать программу, которая определяет наименьшее натуральное число с произведением цифр равным N.

Технические требования:

Ограничение по времени тестирования: по 1 секунде на один тест.

Формат входных данных:
Входной файл содержит одно целое число N.

Формат выходных данных:
Выходной файл должен содержать одно число - искомое наименьшее
натуральное число. Если такого числа не существует, то записать в выходной
файл значение 0.

Входные данные
10
Выходные данные
25
_____
Код:
var
n, n1, k: longint;
i : integer;
begin
read(n); n1:=0; k:=1;
for i:=9 downto 2 do
while n mod i=0 do
begin n1:=n1+i*k; k:=k*10; n:=n div i end;
if n>1 then n1:=0;
end.
Тут на мой взгляд всё нормально, но система не принимает
____
В цех вторичной переработки поступают бутылки N (1<=N<=8) видов: A, B, C,
... (первые N заглавных букв латинского алфавита). Бутылки поступают на
переработку партиями из N контейнеров, причем в каждом контейнере могут
находиться бутылки различных видов. Перед вторичной переработкой бутылок
специальные рабочие сортируют их по видам таким образом, чтобы после
сортировки в каждом из поступивших контейнеров остались бутылки только
одного вида. В каждом из контейнеров может помещаться неограниченное колич
ество бутылок.
Требуется написать программу, которая определяет минимальное количество
перемещений бутылок, обеспечивающих их сортировку по видам, причем за
каждое перемещение можно переместить только одну бутылку из одного
контейнера в другой.
Технические требования:
Ограничение по времени тестирования: 5 секунд на один тест.
Формат входных данных:
Входной файл состоит из N+1 строк. В первой строке записано число
N. Во второй строке располагаются разделенные пробелами N целых числа,
соответствующие количеству бутылок вида A, B, C, ... в первом контейнере. В
последующих cтроках содержится аналогичная информация для второго,
третьего, ..., N-го контейнеров соответственно. Известно, что количество
бутылок в каждом из контейнеров не превосходит 32767.
Входные данные:
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
Код:
var
n, i, j, s : integer;
ss, m, max : longint;
a : array [1..8, 1..8] of integer;
p, pmax : array [0..8] of integer;
begin
readln(n); ss:=0;
for i:=1 to n do
for j:=1 to n do
begin read(s); ss:=ss+s; a[i,j]:=s end;
for i:=0 to n do p[i]:=i;
max:=0;
repeat
m:=0; for i:=1 to n do m:=m+a[i,p[i]];
if m>max then begin max:=m; pmax:=p end;
j:=n; repeat j:=j-1 until p[j]<p[j+1];
if j>0 then
begin
i:=n+1; repeat i:=i-1 until p[i]>p[j];
s:=p[i]; p[i]:=p[j]; p[j]:=s;
for i:=j+1 to (n+j+1) div 2 do
begin s:=p[i]; p[i]:=p[n+j+1-i]; p[n+j+1-i]:=s end
end
until j=0;
for i:=1 to n do write(chr(pmax[i]-1+ord('A')));
write(ss-max);
end.
_________
Ну и последняя.
(см. примеры).
Ограничения: 2 <= N <= 100.
В первой строке находится единственное число N.
Выводится N строк по N чисел, разделённых пробелами. Не
допускается начинать спираль в ином, кроме верхнего левого, углу, закручивать спираль
против часовой стрелки или изнутри наружу.
Примеры
входные выходные
3 1 2 6
3 5 7
4 8 9
Код:
Var input,output: text;
    n,i,j,l,m,k,d:  integer;
         a:array[1..200] of integer;
    b:array[1..100,1..100] of integer;
begin
      m:=1; d:=1; l:=0;
      read(n); write('n=',n:3);
      for k:=2 to 2*n do begin if l=0 then l:=1 else l:=0;
      for i:=1 to n do
      for j:=1 to n do begin
      if l=0 then if i+j=k then begin b[i,j]:=d; d:=d+1;
       end;
      if l=1 then if i+j=k then begin b[j,i]:=d; d:=d+1;
       end;
        end;
       end;
      for i:=1 to n do begin
      for j:=1 to n do write(b[i,j]:5);
       end;
      end.
Тут та жа самая беда. Не смог построить таблицу влепить(((
macOSx вне форума
Старый 13.12.2011, 08:34   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Тут на мой взгляд всё нормально, но система не принимает
по первой задаче. Вы, может быть, не обратили внимание, но входное значение N может быть вплоть до 2147483647
введите, хотя бы 10000000

ну и ещё, Вы забыли, что надо выводить ответ (значение n1)
Serge_Bliznykov вне форума
Старый 13.12.2011, 13:41   #3
macOSx
 
Регистрация: 11.12.2011
Сообщений: 3
По умолчанию

Serge_Bliznykov, если я не ошибаюсь для интервала от -2147483647 до 2147483647 как раз нужно писать longint, а вывод походу снёс когда тему оформлял)))
macOSx вне форума
Старый 13.12.2011, 13:57   #4
macOSx
 
Регистрация: 11.12.2011
Сообщений: 3
По умолчанию

Так, я щас усвоил для себя две вещи.
1) когда берёшь чужой код не надо его насиловать до потери пульса))))
2) если писать код с нуля самому, ошибки пропадают ^_^
_____
Тему можно закрыть. Про последние две мне сёдня объяснили, а первую переписал... Как ни странно оказалось правильно -_-
macOSx вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с задачей по C# Genus133 Помощь студентам 2 30.10.2010 01:46
Проблема с задачей bol2909 Общие вопросы C/C++ 2 06.12.2009 18:18
Проблема с задачей в c# OnlySergio Помощь студентам 4 25.11.2009 10:47
Проблема с задачей :( fadea Помощь студентам 3 27.10.2008 19:21
Проблема с задачей по С++ TheWanderer Общие вопросы C/C++ 4 02.10.2008 00:21