Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Delphi] Задача на цифры числа 
:(
    Опции темы
Devilmycry
Дата 7.3.2008, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.2.2008

Репутация: нет
Всего: нет



Люди помогите плиз решить задачку по Delphi только плиз не через консоль. 
Суть задачи такова: Дано натуральное число N. Проверить, будут ли все цифры числа различными.
PM MAIL   Вверх
mr.Anderson
Дата 7.3.2008, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 16
Всего: 128



Devilmycry, как понять "не через консоль"? Число вводить с использованием GUI, что ли? Тут писать-то нечего, возня одна. Если надо, сделаю.


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
Devilmycry
Дата 7.3.2008, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.2.2008

Репутация: нет
Всего: нет



я  тока начал Delphi изучатьsmile не через консоль это значит не нужно в коде использовать readln, а нужно  получить исходные данные из полей ввода Например (a:=StrToInt(edit1.Text);)
Пожалуйста сделай.
PM MAIL   Вверх
THandle
  Дата 7.3.2008, 21:05 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



Ну можно без перевода в число. Просто работа со строчкой. ИМХО, самый простой вариант smile 

Функция:

Код

function Varios(const number : string) : byte;
var
  i, j : integer;
begin
  result := 0;
  if length(number) = 0 then exit;
  for i := 1 to length(number) do
      for j := 1 to length(number) do
        if ((number[i] = number[j]) and (i <> j)) then
          begin
            result := 1;
            exit;
          end;
  result := 2;
end;


Пример её вызова по нажатию кнопки:

Код

procedure TForm1.Button1Click(Sender: TObject);
var
  result : byte;
begin
  result := Varios(edit1.text);
  case result of
    0: ShowMessage('Число не введено!!! Ошибка!');
    1: ShowMessage('В введенном числе присутствуют одинаковые цифры');
    2: Showmessage('В введенном числе нет одинаковых чисел');
  end;
end;




PM   Вверх
mr.Anderson
Дата 7.3.2008, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 16
Всего: 128



Сделал. Изучи как следует, я составил прогу по всем правилам (с проверками и прочим, так, как должно создаваться нормальное GUI-приложение).

Скачать: http://meetfile.com/files/47764/Program.rar.html .

Добавлено через 1 минуту и 28 секунд
ЗЫ. THandle, использовал ваш код со стилистическими и оптимизационными корректировками.


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
THandle
Дата 8.3.2008, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



mr.Anderson, я это написал на коленке за пару минут. Естественно мой код не претендует на звание лучшего. smile 



mr.Anderson, и заканчивайте ко мне на Вы обращаться smile 
PM   Вверх
mr.Anderson
Дата 8.3.2008, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 16
Всего: 128



THandle, я не спорю, поэтому подкорректировал. smile

ЗЫ. хотя даже на коленке можно написать лучше...  smile   smile   smile 

ЗЗЫ. Ок. smile Закончил.

Это сообщение отредактировал(а) mr.Anderson - 8.3.2008, 13:17


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
Kuvaldis
Дата 9.3.2008, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


механик-вредитель
***


Профиль
Группа: Участник Клуба
Сообщений: 1189
Регистрация: 16.6.2006
Где: Минск

Репутация: 32
Всего: 61



ИМХО, для паскаля было бы красивым решение через множества smile


--------------------
Помни - когда ты спишь, враг не дремлет
Спи чаще и дольше, изматывай врага бессоницей
PM MAIL ICQ   Вверх
mr.Anderson
Дата 9.3.2008, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 16
Всего: 128



Kuvaldis, как именно? Не совсем представляю, как можно в задаче о сравнениях заюзать множества...


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
Devilmycry
Дата 14.3.2008, 09:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.2.2008

Репутация: нет
Всего: нет



Спасибо большое за помощь!!!!!!!!!!!!!!!!!
PM MAIL   Вверх
Devilmycry
Дата 14.3.2008, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.2.2008

Репутация: нет
Всего: нет



Блин учитель не принимает задачу, говорит что эта задача не должна решаться через string так как эта задача относится к целочисленной арифметике.
PM MAIL   Вверх
mr.Anderson
Дата 14.3.2008, 12:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 16
Всего: 128



Devilmycry, придирки. smile Хотя в ВУЗах и школах обычное явление.

Держи. http://meetfile.com/files/48137/Program.rar.html


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0522 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.