Форум программистов, компьютерный форум, киберфорум
Наши страницы
Haskell
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
iduchev
0 / 0 / 0
Регистрация: 15.10.2017
Сообщений: 12
1

Разница в компиляторах разных версий

16.10.2017, 02:53. Просмотров 802. Ответов 3

Пишу я код на Ideone, всё нормально компилируется, работает так, как надо. Захожу постить на e-olymp - ошибка source.hs:8:5: parse error on input `main'

Как от неё избавиться?

Haskell
1
2
3
4
5
6
7
8
9
10
    funnc :: Double -> Double -> Double -> IO()
    funnc a b h = do 
                      print (3 * sin a )
                      if a < b 
                         then funnc (a+h) b h 
                      else return ()
     
    main = do 
                [aa,bb,hh] <- (map read . words) `fmap` getLine
                funnc aa bb hh
Добавлено через 5 минут
Уже не актуально - компилятор с еолимпа просто чувствительный к пробелам

Добавлено через 21 минуту
Чтобы не плодить темы, спрошу здесь:

Как сделать вывод 2 числовых значений в 1 строчке?

Haskell
1
2
3
4
5
6
7
8
9
10
    funnc :: Float -> Float -> Float -> IO()
    funnc a b h = do 
                      printf "%.3f %.3f\n" (a::Float) (3*sin a::Float)
                      if a < b
                          then funnc (a+h) b h
                      else return ()
     
    main = do 
                [aa,bb,hh] <- (map read . words) `fmap` getLine
                funnc aa bb hh
prog.hs:3:23: error:
• Variable not in scope:
printf :: [Char] -> Float -> Float -> IO a0
• Perhaps you meant ‘print’ (imported from Prelude)
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2017, 02:53
Ответы с готовыми решениями:

На каких компиляторах создают игры типа Fallout?
Что-то пол года на Delphi отсидел и так понимаю что путёвую игрушку какую нибудь простую но всё же...

Есть ли разница в компиляторах?
на все коды ругается этот компилятор (Borland C++ 3.1). Может там есть какие то свои спец...

Разный вывод в разных компиляторах
Здравствуйте! Вот код: void read_massiv(int *m, int length) { for (int i = 0; i &lt; length;...

Разный вывод в разных компиляторах
Всех с наступающей весной!) Проблема такая, вот этот код: int main() { long double n, itog =...

Две части программы на разных компиляторах
Не знаю, в ту ли тему я пишу свой вопрос :) А состоит он вот в чем. Написал я довольно большое...

3
Curry
2993 / 2074 / 257
Регистрация: 01.06.2013
Сообщений: 4,527
Записей в блоге: 9
16.10.2017, 06:37 2
Лучший ответ Сообщение было отмечено iduchev как решение

Решение

Цитата Сообщение от iduchev Посмотреть сообщение
компилятор с еолимпа просто чувствительный к пробелам
Не используйте символ табуляции в исходниках. Используйте редактор который умеет заменять табуляции на пробелы.
Определения невложенных функций обязательно с начала строки.

Для использования printf нужно подключить модуль Text.Printf.
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
import Text.Printf
 
funnc :: Float -> Float -> Float -> IO()
funnc a b h = do 
                      printf "%.3f %.3f\n" a (3*sin a)
                      if a < b
                          then funnc (a+h) b h
                      else return ()
 
main:: IO ()
main = do 
                [aa,bb,hh] <- (map read . words) <$> getLine
                funnc aa bb hh
3
Case-Man
167 / 107 / 22
Регистрация: 02.01.2012
Сообщений: 596
16.10.2017, 07:59 3
Простые олимпиадные задачки обычно допускают примерно такие схемы решения:
Haskell
1
main = interact $ show . process . (map read) . words
Haskell
1
main = interact $ unwords . (map show) . process . (map read) . words
1
Catstail
16.10.2017, 12:43     Разница в компиляторах разных версий
  #4

Не по теме:

Я вообще не понимаю, зачем программисту табуляция...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2017, 12:43
Привет! Вот еще темы с ответами:

Один и тот же код не работает в разных компиляторах
Один и тот же код, но в FPS4 работает, а в интеле и компаке нет. В чем может быть проблема? ...

Несоответствие работы cin.putback в разных компиляторах
Здравствуйте! Озадачило меня следующее несоответствие (текст приведен в качестве примера): ...

Возможна ли компиляция одного и того же исходного кода в разных компиляторах?
Будут ли копии одной и той же программы на Си компилироваться в разных компиляторах или потребуется...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.