Форум программистов, компьютерный форум, киберфорум
Священные войны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.70/254: Рейтинг темы: голосов - 254, средняя оценка - 4.70
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 03:31  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Но это в корне неправильно.
А что тут неправильного: считывать вещественную переменную до точки? Или преобразовывать её к типу int сразу на вводе.
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Dennis Ritchie, так что тут "тухлого"?
Слишком много писанины, это свойственно энтерпрайз-языкам.
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Давайте возьмем другую задачу:
распарсить текстовый файл с данными, для последующей обработки?
Я ещё ту задачу не решил, а вы уже следующую хотите засолить.

Добавлено через 1 минуту
Цитата Сообщение от S_el Посмотреть сообщение
E тоже уже занят.
Вот поэтому D уникален. Он последний в своём роде перед D++.
0
Заблокирован
10.02.2015, 03:33
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
А что тут неправильного: считывать вещественную переменную до точки?
Dennis Ritchie, именно. Представьте, что она понадобится для реальных расчетов.

Цитата Сообщение от S_el
E тоже уже занят.
Спасибо, не знал о его существовании.
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 03:39  [ТС]
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Представьте, что она понадобится для реальных расчетов.
Значит, программист тупой, если выбрал тип int для вещественной переменной.
0
 Аватар для castorsky
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
10.02.2015, 04:02
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Слишком много писанины, это свойственно энтерпрайз-языкам.
Ну то есть этим Вы хотите сказать что в дэ нет системы исключений, ну или пример Вашей программы совершенно "боевой" и не нуждается в проверке ввода?

Добавлено через 2 минуты
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Значит, программист тупой, если выбрал тип int для вещественной переменной
то есть простая путаница исключается за невозможностью иметь место в работе.
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 05:21  [ТС]
Цитата Сообщение от castorsky Посмотреть сообщение
Ну то есть этим Вы хотите сказать что в дэ нет системы исключений, ну или пример Вашей программы совершенно "боевой" и не нуждается в проверке ввода?
Ну почему же? В D, если вы для целочисленного типа введёте букву или другой невменяемый символ, система исключений сразу выведет такой лог с ошибками:
Кликните здесь для просмотра всего текста
a
std.conv.ConvException@C:\D\dmd2\src\pho bos\std\conv.d(1967): Unexpected '
' when converting from type LockingTextReader to type int
----------------
0x004086C0 in int std.conv.parse!(int, std.stdio.LockingTextReader).parse(ref std.stdio.LockingTextR
eader) at C:\D\dmd2\src\phobos\std\conv.d(1969)
0x0040840C in int std.conv.parse!(int, std.stdio.LockingTextReader).parse(ref std.stdio.LockingTextR
eader, uint) at C:\D\dmd2\src\phobos\std\conv.d(2163)
0x004075BC in int std.format.unformatValue!(int, std.stdio.LockingTextReader, char).unformatValue(re
f std.stdio.LockingTextReader, ref std.format.FormatSpec!(char).FormatSpec) at C:\D\dmd2\src\phobos\
std\format.d(4206)
0x0040463C in uint std.format.formattedRead!(std.stdio.Lock ingTextReader, char, int*).formattedRead(
ref std.stdio.LockingTextReader, const(char)[], int*) at C:\D\dmd2\src\phobos\std\format.d(603)
0x00404598 in uint std.stdio.File.readf!(int*).readf(const( char[]), int*) at C:\D\dmd2\src\phobos\st
d\stdio.d(1465)
0x004044EE in uint std.stdio.readf!(int*).readf(const(char[]), int*) at C:\D\dmd2\src\phobos\std\std
io.d(3038)
0x0040202D in _Dmain at C:\Users\REiS\Documents\Projects\Dlang2\ Dlang2\main.d(6)
0x0040B532 in D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ6ru nAllMFZ9__lambda1MFZv
0x0040B507 in void rt.dmain2._d_run_main(int, char**, extern (C) int function(char[][])*).runAll()
0x0040B41D in _d_run_main
0x0040B0F8 in main
0x00421891 in mainCRTStartup
0x750D7C04 in BaseThreadInitThunk
0x775BB90F in RtlInitializeExceptionChain
0x775BB8DA in RtlInitializeExceptionChain

Цитата Сообщение от castorsky Посмотреть сообщение
то есть простая путаница исключается за невозможностью иметь место в работе.
Как будет вам угодно.

Добавлено через 16 минут
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
C#
1
2
3
4
5
var query = Enumerable.Range(2, 10)
                .Select(c => new { Length = 2 * c, Height = c * c - 1, Hypotenuse = c * c + 1 })
                .Select(x => string.Format("{0,4}{1,4}{2,4}", x.Height, x.Hypotenuse, x.Length));
            foreach (var x in query)
                Console.WriteLine(x);
Ev_Hyper, пора выбрасывать C# на помойку (много писанины) :
C++
1
2
3
4
5
6
7
8
9
void main() {
    import std.stdio, std.range;
    
    auto query = iota(2, 12)
        .map!(c => tuple(c ^^ 2 - 1, c ^^ 2 + 1, 2 * c));
 
    foreach (x; query)
        writefln("%4d%4d%4d", x[]);
}
http://ideone.com/XCFScc

Добавлено через 6 минут
Кстати, в C++ нет такой же удобной операции возведения в степень, как в D (стырили из Python'a):
C++
1
2
3
4
5
6
7
8
9
10
11
void main() {
    import std.stdio;
 
    writeln(2 ^^ 10);
 
    int a = 2;
 
    a ^^= 5;
 
    writeln(a);
}
Output1024
32


Вы понимаете, что сравнивать C# и D бесполезно, потому что Александреску в десять раз гениальнее, чем Хейлсберг.
0
 Аватар для castorsky
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
10.02.2015, 05:22
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Ну почему же? В D, если вы для целочисленного типа введёте букву или другой невменяемый символ, система исключений сразу выведет такой лог с ошибками
Следовательно Ваш пример тоже надо привести к такому же виду как это сделал Ev_Hyper, т.е. споймать и обработать некоректный ввод, что естесственно вложится уже не в одну строчку, а 3-4, и как следствие:
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Слишком много писанины, это свойственно энтерпрайз-языкам.
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 05:37  [ТС]
Цитата Сообщение от castorsky Посмотреть сообщение
как это сделал Ev_Hyper
Ev_Hyper, это сделал потому, что ввод данных в C# устроен так, как функция gets(str) (жрёт всё подряд из потока ввода) из чистого C. Поэтому неудивительно, что там такие проверки. Уверен, что в D, даже с проверкой, кода будет намного меньше.
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 06:10  [ТС]
Просто вы не понимаете элементарного.
Если у разработчика языка программирования горят глаза, значит, разрабатываемый язык будет отличным (иначе язык будет тухлым, как C# - у Хейлсберга не горят глаза):
Миниатюры
D vs C++  
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 06:14
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
pycture, специально для вас Ali Çehreli (автор одной из книг по D)
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
А в компиляторе, который выйдет 1 марта, можно будет писать так
это какойто понос из библиотечных функций, который можно устроить в любом языке. где ж хваленая мощь самого дэ? у меня используется только одна библиотечная функция - sin. все остальное выразительные средства самомого языка. и так ждем код который будет использовать только sin из стандарных библиотек
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 06:24  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
у меня используется только одна библиотечная функция - sin. все остальное выразительные средства самомого языка. и так ждем код который будет использовать только sin из стандарных библиотек
Для начала выполните два простых условия.

1) Ответьте на вопрос: "Что это за язык?":
Code
1
let sins = [for x in 0.0..pi/2.0/9.0..pi/2.0 -> sin x]
2) Напишите полный код программы.
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 06:31
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Для начала выполните два простых условия. Ответьте на вопрос: "Что это за язык?"
Ev_Hyper, уже все сказал и даже показал.
Напишите полный код программы
это полный код части программы. иницилизация массива. больше (пока) ниче от дэ не требуется.
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 06:44  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
это какойто понос из библиотечных функций, который можно устроить в любом языке.
И, кстати, здесь используется всего лишь одна библиотечная функция iota() для задания диапазона:
C++
1
2
3
4
5
6
7
8
import std.math;
import std.stdio;
import std.range;
 
void main()
{
    "%(%.15g\n%)".writefln(iota(0, PI/2, PI/2/9).map!sin);
}
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 06:48
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
всего лишь одна библиотечная функция iota() для задания диапазона
я ж сказал что только sin (т.к. почти все языки его реализуют библиотеками) можно. никаких iota не допускается.
что без библиотек дэ совсем ниче не может?

Добавлено через 1 минуту
подозреваю что .map это тоже функция
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 06:49  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
что без библиотек дэ совсем ниче не может?
Я попробую.

Добавлено через 1 минуту
Цитата Сообщение от pycture Посмотреть сообщение
подозреваю что .map это тоже функция
.map работает без подключения заголовочных файлов.
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 07:02
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
.map работает без подключения заголовочных файлов
а writefln ?
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 07:09  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
а writefln ?
Это вывод массива на экран.

Добавлено через 5 минут
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
.map работает без подключения заголовочных файлов.
Хотя нет. Я ошибся это библиотечная функция из std.range. Но программу без функций я всё равно попробую сделать.
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 07:37
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Это вывод массива на экран
это и так понятно. без import std.stdio работает?
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 07:40  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
это и так понятно. без import std.stdio работает?
А эта тухлятина на экран что-нибудь выводит?
Code
1
let sins = [for x in 0.0..pi/2.0/9.0..pi/2.0 -> sin x]
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 07:41
а то если что даже в паскале без импортов работает
Pascal
1
2
3
4
program ideone;
begin
    writeln('hello world');
end.
Добавлено через 1 минуту
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
А эта тухлятина на экран что-нибудь выводи
надо будет выведет. и двже без импортов. вы от решения не отвлекайтес. как там с созданием массива то?
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 07:42  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
а то если что даже в паскале без импортов работает
В Паскале вообще практически нет импортов. Может быть, ещё до ассемблера опуститесь?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Закрытая тема Создать тему
Новые блоги и статьи
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
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru