Форум программистов, компьютерный форум, киберфорум
Haskell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 06.05.2014
Сообщений: 18

Задача с числами

06.05.2014, 23:16. Показов 571. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем ребят. Очень нужна ваша помощь. Не могу справиться с казалось бы простой задачей. Необходимо ввести два числа, желательно 4-х значные . Мне нужно найти кол-во совпавших цифр первого числа во втором, а так же кол-во совпавших поцизий цифр. Предмет плохо преподали, и ничего не могу понять. Начал с того, что бы преобразовать вводимые числа в списки. Написал только функцию. Очень надеюсь на любую помощь.
Haskell
1
2
masf 0 = []
masf x = (x - (div x 10)*10) : (masf (div x 10))
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.05.2014, 23:16
Ответы с готовыми решениями:

Задача с числами
Даны три переменные: X, Y, Z. Если их значения упорядочены по убыванию, то удвоить их; в противном случае заменить значение каждой...

Задача с числами
обеспечить вывод в memo всех трехзначных чисел,сумма цифр которых равна введенному числу N (1<N<27).Определить количество этих...

задача числами
Дано натуральное число с различными цифрами. Определить, какая максимальная цифра числа расположена ближе к началу или концу числа

6
165 / 164 / 23
Регистрация: 23.02.2011
Сообщений: 347
07.05.2014, 10:00
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import Data.List
 
num2list = reverse . masf where
    masf 0 = []
    masf x = (x - (div x 10)*10) : (masf (div x 10))
 
compareNum a b = (fst$ foldl countCalc (0,b') a',
                  foldl (\count (x,y) -> fromEnum (x == y) + count) 0 (zip a' b'))
    where
        a' = num2list a
        b' = num2list b
        countCalc (acc,lst) x
            | x `elem` lst = (acc+1,lst\\[x])
            |otherwise = (acc,lst)
1
0 / 0 / 0
Регистрация: 06.05.2014
Сообщений: 18
07.05.2014, 10:51  [ТС]
Спасибо большое Algiz ! Но не мог бы ты пожалуйста пояснить чуть чуть что здесь к чему?( Что то понимаю, видел какие то функции в глаза , но что то остается загадкой. Но еще раз спасибо тебе!
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38200 / 21132 / 4310
Регистрация: 12.02.2012
Сообщений: 34,740
Записей в блоге: 14
07.05.2014, 11:35
Не вполне понятна формулировка... Вот функция, которая показывает сколько общих цифр у двух произвольных чисел:

Haskell
1
2
3
4
5
6
7
8
9
10
f1 :: Int -> Int -> Int
f1 n1 n2 = length $ filter (\ q -> (q `elem` s2)) s1
           where s1=show n1
                 s2=show n2
 
 
Main> f1 1234 3561
2
Main> f1 12 3561
1
0
0 / 0 / 0
Регистрация: 06.05.2014
Сообщений: 18
07.05.2014, 11:45  [ТС]
Catstail, Очень интересно, спасибо огромное. Можете пожалуйста пояснить , что такое
Haskell
1
s1=show n1
и
Haskell
1
 \ q ->
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38200 / 21132 / 4310
Регистрация: 12.02.2012
Сообщений: 34,740
Записей в блоге: 14
07.05.2014, 11:51
Вот поиск к-ва совпадающих цифр, стоящих на одинаковых местах:

Haskell
1
2
3
4
5
6
7
8
f2 :: Int -> Int -> Int
f2 n1 n2 = length $ filter (\ (f,s) -> f == s) z
           where z=zip (show n1) (show n2)
 
Main> f2 4512 7213
1
Main> f2 4512 7212
2
Добавлено через 2 минуты
show - это функция преобразования в строку. А вот конструкция (\ q -> (q `elem` s2)) задает безымянную функцию, которая применяется к каждому символу строки s1 (он обозначен q) и проверяет, входит ли этот символ в строку s2
1
0 / 0 / 0
Регистрация: 06.05.2014
Сообщений: 18
07.05.2014, 12:20  [ТС]
Catstail, Большое вам спасибо! Все стало очень доступно и понятно!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.05.2014, 12:20
Помогаю со студенческими работами здесь

Задача с числами
Подскажите пожалуйста как реализовать данную задачу: Говорим о лотереи. Есть 80 чисел (от 1 до 80) из них выпадает 20 (которые я вношу...

Задача с числами Фибонначи
В файле записана непустая последовательность целых чисел, являющихся числами Фибоначчи. Приписать еще столько же чисел этой...

Найдите наименьшие натуральные числа, удовлетворяющие заданному условию
Существуют натуральные числа, оканчивающиеся на цифру N , такие, что перенесение цифры N в начало числа приводит к увеличению числа в N...

Задача с натуральными числами
Существуют натуральные числа, оканчивающиеся на цифру N , такие, что перенесение цифры N в начало числа приводит к увеличению числа в N...

Задача с натуральными числами
Здравствуйте помогите пожалуйста выполнить эту задачу Заполнить файл случайными натуральными числами. Выполнить след. задания 1)найти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru