Форум программистов, компьютерный форум, киберфорум
Haskell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
 Аватар для sahaPusher
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 31

Проверить строку на условие

24.04.2017, 00:24. Показов 2519. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Заранее спасибо за помощь
1. В задании описаны правила составления некоторого пароля. Написать функцию, проверяющую удовлетворяет ли заданная строка данным правилам.
а)должен содержаться знак подчеркивания, но не на первом и не на последнем месте; б)количество заглавных букв не должно превышать количество строчных

Вот все что пришло в голову,но всеравно ругается на if почему то(это только для 2 условия,1 так и не понял как проверить)


Haskell
1
2
3
4
5
count[] = 0
count1[] = 0
count (x:xs)
       if isUpper x then 1 + count (xs) else 1 + count1 (xs)
f l = (count l <= count1 l)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.04.2017, 00:24
Ответы с готовыми решениями:

Проверить, можно ли из букв, входящих в строку А, составить строку В
Даны две символьные строки А и В. Составьте программу, проверяющую, можно ли из букв, входящих в А, составить В. (буквы можно использовать...

Проверить, можно ли из букв, входящих в строку А, составить строку В
Даны две строки А и В. составить программу, проверяющую, можно ли из букв, входящих в строку А, составить строку В (буквы можно...

Проверить, можно ли из букв, входящих в строку А, составить строку В
Обязательно использовать String и StringBuilder. Даны две строки А и B. Составьте программу, проверяющую, можно ли из букв, входящих в А,...

3
Модератор
 Аватар для Curry
5153 / 3451 / 536
Регистрация: 01.06.2013
Сообщений: 7,518
Записей в блоге: 9
24.04.2017, 01:42
Haskell
1
2
3
4
5
task :: String -> Bool
task ('_':_) = False
task l@(_:t@(_:_)) = last t /= '_' && elem '_' (init t) && cnt isUpper <= cnt isLower 
    where cnt f = length $ filter f l
task _ = False
1
43 / 41 / 8
Регистрация: 17.04.2016
Сообщений: 39
24.04.2017, 18:34
Цитата Сообщение от sahaPusher Посмотреть сообщение
должен содержаться знак подчеркивания, но не на первом и не на последнем месте
Если он содержится и на первом месте и где-нибудь в середине, то такой пароль считается валидным или нет?

Haskell
1
2
3
4
5
6
7
8
9
10
import Data.List
import Data.Function
import Data.Char
 
taskA str | first str == '_' || last str == '_' = False
          | otherwise = '_' `elem` (init $ tail str)
          
taskB = uncurry ((<=) `on` length) . partition isUpper
 
task str = taskA str && taskB str
0
Модератор
 Аватар для Curry
5153 / 3451 / 536
Регистрация: 01.06.2013
Сообщений: 7,518
Записей в блоге: 9
24.04.2017, 20:36
Цитата Сообщение от yegorov Посмотреть сообщение
taskB = uncurry ((<=) `on` length) . partition isUpper
Символы бывают не только заглавные буквы и строчные буквы, но и другие.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.04.2017, 20:36
Помогаю со студенческими работами здесь

Проверить, можно ли из букв, входящих в строку А, составить строку В
Даны две строки А и В. Составьте программу, проверяющую, можно ли из букв, входящих в А, составить В (буквы можно использовать не более...

Не получается проверить условие
Задача такая. - Делаю к БД запрос на кол-во записей по определенному условию - Проверяю условие. Если не нулевое значение, то...

Как проверить условие?
Помогите со скриптом bash: #!/bin/bash var1=2 var2=2 if $var1=$var2 then echo &quot;Net PRAV&quot; fi Выдает ошибку &quot;Ошибка...

Проверить условие SQL запроса
Добрый вечер. Перестал работать запрос: echo $sql; // для проверки sql запроса $res =...

Проверить условие ортогональности матрицы
Мальчики помогите пожалуйста выполнить задание , а то я в этом плохо понимаю ((( Нужно написать программу которая бы решала СЛАУ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение/ Перевод https:/ / **********/ gallery/ thinkpad-x220-tablet-porn-gzoEAjs . . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru