|
|
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Dim I As Integer I = 0 Debug.Print I * ((I = 0) + 1) / Abs(I + (I = 0)) I = -666 Debug.Print I * ((I = 0) + 1) / Abs(I + (I = 0)) I = 666 Debug.Print I * ((I = 0) + 1) / Abs(I + (I = 0)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:31:26 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:36:29 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
БерлuнгерЯростный МечКоллеги, покритикуйте мой вариант А то у меня фобия, что "все игнорируют" вроде работает - к тому же пока самое приличное из всех (если считать разрешенными функции floor -- как аппаратную, а abs -- как наложение маски) А при -1 и 1 в той формуле разве нет деления на ноль? )) В ней их еще больше. Так что, от a / abc(a) она ничем не отличается. Только абсов в ней 4, делений 2, проблемных точек, в которых происходит деление на ноль - тоже две. А смысл тот же )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:40:49 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Но округление необходимо конечно же, я упустил что в задании на входе не целое, а на выходе целое. Только округление, которое возвращает целое. Если floor возвращает int значит его, если нет - значит надо посмотреть справочник по функциям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:46:22 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Edd.DragonБерлuнгерЯростный МечКоллеги, покритикуйте мой вариант А то у меня фобия, что "все игнорируют" вроде работает - к тому же пока самое приличное из всех (если считать разрешенными функции floor -- как аппаратную, а abs -- как наложение маски) А при -1 и 1 в той формуле разве нет деления на ноль? ))А подумать? abs(x)+1 может ли быть нулем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:47:13 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Яростный Меч, А, в скобках запутался ))) Сорри ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:47:59 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
В общем, всем решившим можно присвоить звание "Почетный школьник форума". И закрыть топик. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:50:31 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Edd.DragonНо округление необходимо конечно же, я упустил что в задании на входе не целое, а на выходе целое. Зачем округление ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:52:04 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Edd.DragonБерлuнгерЯростный МечКоллеги, покритикуйте мой вариант А то у меня фобия, что "все игнорируют" вроде работает - к тому же пока самое приличное из всех (если считать разрешенными функции floor -- как аппаратную, а abs -- как наложение маски) А при -1 и 1 в той формуле разве нет деления на ноль? )) В ней их еще больше. Так что, от a / abc(a) она ничем не отличается. Только абсов в ней 4, делений 2, проблемных точек, в которых происходит деление на ноль - тоже две. А смысл тот же )) деления на ноль не будет. от a / abc(a) она отличается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:55:37 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
rstudioEdd.DragonНо округление необходимо конечно же, я упустил что в задании на входе не целое, а на выходе целое. Зачем округление ? Потому что преобразование типа вовсе не обязано преобразовать число из float-формата в int-формат. Т.е. нужна функция, которая возвращает в формате int целую часть переданного ей числа. Если преобразование типа в конкретном языке так же поступает - отлично. Если нет, ищем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:01:13 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Edd.DragonrstudioEdd.DragonНо округление необходимо конечно же, я упустил что в задании на входе не целое, а на выходе целое. Зачем округление ? Потому что преобразование типа вовсе не обязано преобразовать число из float-формата в int-формат. Т.е. нужна функция, которая возвращает в формате int целую часть переданного ей числа. Если преобразование типа в конкретном языке так же поступает - отлично. Если нет, ищем. не понял, речь о решении х/abc(x) ? Какая разница, -0.001/abc(-0.001) = -0.001/0.001 = -1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:04:50 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
rstudio Какая разница, -0.001/abc(-0.001) = -0.001/0.001 = -1 -0.001/0.001 = -1.000. А в условии задачи требуют вернуть целое, т.е. int ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:08:32 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
да, тогда округление нужно. Но конечно эта часть от языка зависимая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:13:19 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
rstudioда, тогда округление нужно. Но конечно эта часть от языка зависимая. floor - вообще то штука аппаратная и почти во всех языках пристуствует ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:14:44 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Берлuнгерrstudioда, тогда округление нужно. Но конечно эта часть от языка зависимая. floor - вообще то штука аппаратная и почти во всех языках пристуствует может быть неявное приведение типов например в бесике Код: plaintext 1. 2. 3. 4. успешно вернет один ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:24:11 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
rstudioможет быть неявное приведение типов обычно это делается так: константа на уровне компилятора приводится к наиболее удобному типу. если же типы не совпадают и происходит обрезание (например double к int), то выводится варинг ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:47:40 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Платформенно-независимая версия варианта eee-pc: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 18:10:50 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Кстати, не забываем, что х - не обязательно целое. авторВводят действительное число х. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 18:19:02 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Забавно что до сих пор ничего не известно о ЯП. Кст. мне вспоминается шаблон... кажется назывался "Replace Condition With Polymorphism" и мне кажется что, жонглируя булевыми, битовыми операциями и ссылками на функции можно иммитировать работу условного оператора. Хотя... кому нужен этот онанизм? Всего лишь одному преподу, чтоб потешить своё самолюбие и студенту чтобы получить наконец зачот. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 18:52:34 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
на делфи реплэйсами добился результата, но пришлось поискать нужный format выходной строки. код приводить не буду, ибо получилось некрасиво (два преобразования6 в стринг и обратно) и громоздко... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 22:33:39 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Hett Member Откуда: Бийск Сообщений: 2384 ========================== Как можно было написать на форуме столько сообщений и "сломать мозг" над этой задачей? Холивар? Открыл Access, получилось так: ---------------------------------- Dim i As Double i = 0 // Здесь подставить входное значение Dim result As Integer result = 0 If i < 0 Then result = -1 Else If i > 0 Then result = 1 MsgBox CStr(result) вот и все. Достойная тема дляSQL.ru! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2010, 02:01:05 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
fedoseev_sv, молодец, ставлю 2. Модератор: мы обсуждаем тему, но не обсуждаем обсуждающих ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2010, 07:50:44 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
fedoseev_sv, ну и неплохо было бы действитеьлно "сломать мозг" и дочитать задание до конца ))) авторВводят действительное число х. Надо получить целое: если число положительное ответ 1, если 0 то 0, а если отрицательное то -1. Без операторов условия и циклов. Ваш пример (не забываем про теги src, этому специальный раздел форума посвящен): Код: plaintext 1. 2. 3. 4. 5. 6. поясню: вот это операторы сравнения: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2010, 10:24:57 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
А что, решение мое для VB не подходит ? I * ((I = 0) + 1) / Abs(I + (I = 0)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2010, 11:03:29 |
|
||
|
Здачка для школьника
|
|||
|---|---|---|---|
|
#18+
Eduard KondakovА что, решение мое для VB не подходит ? I * ((I = 0) + 1) / Abs(I + (I = 0)) l=0 -- это условие вообще говоря к тому же неизвестно что оно вернут: некоторые языки возвращяют в качестве true 1, некоторые -1, а некоторые вообще не умеют напрямую (без явных привидений) превращять bool в int ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2010, 12:05:18 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=36832045&tid=1343474]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
189ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 531ms |

| 0 / 0 |
