LINUX.ORG.RU

простая програмка на Haskell

 


0

2

здрасть, здрасьте люди добрые...

помогите пожалуйста понять как сделать на Haskell програмку чтобы она через case of выводила значение факториала...

module Main where

main::IO()

fact x 
      |x==0 = 1
      |x>0 =x*fact(x-1)


например, если я введу с клавиатуры число 7, то считается этот факториал, а если любое другое _то просто выводит i love LOR.RU

помогите пожалуйста понять как сделать на Haskell програмку чтобы она через case of выводила значение факториала…

Я бы начал с синтаксиса языка.

hateyoufeel ★★★★★ ()

Можно написать такую программу на Пхитон, и если вы напишете на Хаксел компилятор Пихтона, то сможете запустить эту программу на Пхитхон.

Virtuos86 ★★★★★ ()
Ответ на: комментарий от anonymous

чего-то тебя кошмарит, то ассемблер, то хаскель, то С. Ни один толком не разобрался, чего скачешь то? Попиши на чем-то одном.

И бросало меня, как осиновый лист.  
Я менял языки, я менял города.
Надышался я пылью ЛОР-ких дорог,
Где не пахнут цветы и не светит луна.
anonymous ()
Ответ на: комментарий от Assembler

скажите пожалуйста, могли бы вы написать такую программку?

За 10 часов чтения документации(время с начала создания темы) ты мог написать 100 таких программ. Не быть тебе программистом с таким отношением к решению задач…

fsb4000 ★★★★★ ()
Ответ на: комментарий от fsb4000

вы смеетесь что ли? я пару дней как только как смог установить Haskell. если бы не любимый LOR , то и это бы не смог. и я не мню из себя программиста.

и я вас понимаю, язык реально сложный. вы может и рады бы помочь, но не все могут это сделать. те кто могут, к сожалению проходят мимо.

Assembler ()
Ответ на: комментарий от monk

Злые вы. А потом в интернетах о красноглазиках всякие гадости рассказывают, что они на людей кидаются…

Переборщил …
Модератору просьба - убрать пост.
@monk - надоедают посты с просьбой помочь решить квадратное уравнение.

anonymous ()
Ответ на: комментарий от anonymous

надоедают посты с просьбой помочь решить квадратное уравнение.

Это понятно. Но лучше отвечать ссылкой на учебник, а не нецензурным RTFM или чем похуже.

Я первый раз, когда линукс установил, две недели без графики сидел. Потому что просто не знал, как называется (как найти XFree86 Howto, не зная XFree86). Нашёл чтением всего подряд, что было в /usr/doc/howto.

Здесь человек показал, что установить Haskell он смог, даже нашёл по нему какие-то примеры. Спросил, как в нём правильно написать case. Возможно пытался, но нарывался на проблемы типизации.

В ответ получил видеоинструкцию, как установить Haskell, кучу стёба и совет читать синтаксис языка. В котором что-то понять не видя примеров достаточно сложно.

А потом рождаются описания лиуксоидов типа:

Обижает «невинных» юных адептов free software на форумах фразами: «Читайте man’ы», «у тебя кривые руки», «погугли», «у меня всё работает». При этом, если маны и поисковые системы упорно молчат, то на последующие обвинения в собственной некомпетентности обязательно ответит фразой вроде «Надоело по 100500 раз отвечать на одни и те же вопросы, у меня всё работает, выпрямляйте руки», даже если сам ни разу на такие вопросы не отвечал.

monk ★★★★★ ()
Ответ на: комментарий от monk

В ответ получил видеоинструкцию, как установить Haskell

Нет, там были примеры простых задач решённых на Хаскеле, с объяснением что вообще делаем. 13 видео по 7-10 минут.

Например, в первом видео была задача: нам дали количество чисел, сами n чисел, найти сумму:

https://i.imgur.com/42WyQO6.png

Ответом было:

main = interact $ show . sum  map read . tail . words

Если бы он за полтора часа посмотрел все примеры, то спокойно решил бы свою задачу. Наверное даже раньше, чем досмотрев все примеры.

fsb4000 ★★★★★ ()
Последнее исправление: fsb4000 (всего исправлений: 1)
Ответ на: комментарий от anonymous

Вот как раз гугл для начинающих скорее мешает, чем помогает. Вместо учебника выдаёт ссылки типа https://wiki.haskell.org/Case, которые только запутывают.

Хороший учебник тоже крайне тяжело просто гуглом найти.

monk ★★★★★ ()
Ответ на: комментарий от anonymous

ТС - ИЗВИНИ.

@monk правильно обличил меня, что я злой человек.
Тебе не столько помощь нужна была, как дружеское общение …
Уже два дня совесть, а она является гласом Ангела Хранителя и тем самым Словом Господа ко мне мне обличает за содеянное.
Виноват.

Прости

Советы в этом топике давать не буду.
Почему?
По тому, что в Haskell я - ЛОХ.

Советую тебе немножко поработать с 1С 8.3.17 и понять мощь многих объектов.
Тогда у тебя возникнет обязательно вопрос - «А как такую функциональность реализовать в C++ или какие имеются уже готовые библиотеки».

В 1С сможешь с легкость «наиграться» с списками, деревьями, … - ИМХО много хороших объектов.
Опять таки не для того, чтобы стать 1С программистом, а понять - «Кому на Руси жить хорошо».
Но не увлекайся 1С, а то время попусту много потеряешь.
Впрочем и советы мои не принимай как априори верные.
Это скорее сугубо мой путь.

Если воникнут вопросы по Haskell то кастуй @monk /он в этих вопросах профессионал/.

За свою глупость покажу ка себе
https://www.google.ru/search?newwindow=1&source=univ&tbm=isch&q=большая+дуля&sa=X&ved=2ahUKEwjtzbD4_-jrAhVNs4sKHclmC-0QsAR6BAgKEAE

Владимир

anonymous ()
Ответ на: комментарий от anonymous

если честно, то я даже не знаю, что сказать. лучше давайте пожалуйста оставим это чтобы не давать повода для насмешек некоторым форумчанам.

вам огромное спасибо.

Assembler ()