Код точкової суми quine


20

Усі проблеми з цього зосереджені на кількості байтів або самих символах. Цей інший. Ваше завдання полягає в тому, щоб написати програму, яка виробляє результат, який має суму кодової точки, ідентичну сумі кодового коду джерела.

Для отримання суми кодової точки:

  1. Знайдіть значення символів у наборі символів програми.
    Наприклад - FOOв ASCII: F= 70, O= 79, O= 79
  2. Додайте їх усі разом.
    Сума кодової точки FOOв ASCII: F+ O+ O= 70 + 79 + 79 = 228.

Прикладом ASCII суми quine буде, якби вихідний код був, ABCа вихід був !!!!!!. Це тому, що сума значень ASCII джерела ( A= 65, B= 66, C= 67, сума = 198) така ж, як сума значень ASCII у виході ( != 33, 33 * 6 = 198) . BBBтакож буде дійсним вихід, як це було б cc.

Правила

  • У вашій програмі не повинно бути зворотного, перетасованого, помилкового чи будь-якого іншого типу «справжньої» лайки. Для уточнення: Якщо висновок містить усі ті ж символи, що й джерело, він недійсний.
  • Ваша програма не може використовувати помилки / попередження від компілятора / інтерпретатора як вихід.
  • Джерело вашої програми повинен використовувати ту саму кодову сторінку, що і вихід.
  • Ваша програма може використовувати будь-яку кодову сторінку, створену до цього виклику.
  • Вихідні дані вашої програми не повинні містити символів, що не надруковані (наприклад, ASCII від 0 до 31 або вище 127), окрім подач ліній та вкладок.
  • Застосовуються стандартні лазівки.
  • Якщо джерело та / або вихід має зворотний канал, він повинен бути включений до суми кодової точки.
  • Прапорці компілятора повинні бути включені до остаточного підрахунку байтів (балів), але не суми кодової точки джерела.
  • Вихід / джерело може бути порожнім.

Оцінка балів

Виграє найкоротша відповідь у кількості байтів (не сума балів коду). Будь ласка, використовуйте відповіді у цьому форматі заголовка:

# Jelly, 12 bytes, sum 56 (SBCS)

Цей інструмент можна використовувати для обчислення сум ASCII.

Довідково

Ось кілька корисних посилань на кодові сторінки.


Чи дозволені коментарі?
musicman523

@ musicman523 так, я думаю, що так.
MD XF

Навіщо забороняти попередження? Я вважаю, що це зайве.
Conor O'Brien

1
@ Попередження ConorO'Brien не можуть бути вихідними даними програми, наприклад, немає запитів про помилки. Я думаю, це незрозуміло, одна хвилина.
MD XF

Яка політика щодо прапорів?
Okx

Відповіді:



14

ArnoldC, 316 байт, сума 20992 (ASCII)

Досить весело.

IT'S SHOWTIME
HEY CHRISTMAS TREE s
YOU SET US UP 1
HEY CHRISTMAS TREE iaV
YOU SET US UP 0
STICK AROUND s
GET TO THE CHOPPER iaV
HERE IS MY INVITATION iaV
GET UP 8
ENOUGH TALK
TALK TO THE HAND "H"
GET TO THE CHOPPER s
HERE IS MY INVITATION 2048
LET OFF SOME STEAM BENNET iaV
ENOUGH TALK
CHILL
YOU HAVE BEEN TERMINATED

Я використовував це і це, щоб робити свої розрахунки. Зайняв мене півтори години. Але весело.

Спробуйте в Інтернеті!

Як це працює

STICK AROUNDце цикл, який циклічить 2048рази на індекс iaV, але цей індекс крокує по 8. Отже, є 256петлі, друк Hі подача рядків (72 + 10 = 82, 82 * 256 = 20992).

Це ще ДАЛЕКО golfable (знаходячи іншого Calcs) , але це довго і нудно виміряти ваші байти підсумувати кожен раз , коли ви робите модифікацію.

Скажіть, будь ласка, чи я десь помиляюся.


1
Найкраща відповідь ArnoldC, яку я бачив.
Чарівна восьминога урна

1
@MagicOctopusUrn дякую xD, це моя перша спроба на цій мові (¿¿??!?!? Досі не впевнений, що це одна)
В. Куртуа

github.com/samshadwell/TrumpScript - ще одна безглузда "мова", якщо ви хочете наслідувати президента США.
Чарівна восьминога урна

@MagicOctopusUrn добре іма, роблячи цей виклик у сурдограмі.
В. Куртуа

1
Тож я з'ясував, що ArnoldC підтримує вихід Unicode і відголив додаткові 2 байти. Я розмістив його окремо (з підтвердженням)
TemporalWolf


8

Python 2, 11 байт, сума 838 (ASCII)

print 76**8

відбитки

1113034787454976

Не дуже розумно, але це працює

Спробуйте в Інтернеті!


Чудова перша відповідь; Ласкаво просимо на сайт! Я можу перевірити правильність суми ASCII .
MD XF

Це полігот, він також працює в Groovy, дуже ефектно.
Чарівна восьминога урна

2
Чудова відповідь, але чи не є у висновку зворотний податок рядків, який потрібно додати?
Відновіть Моніку

Це також працює в рубіні
Алексіс Андерсен

7

Желе, 12 байт, сума 948 (SBCS)

Ти сказав:

Желе, 12 байт

то це желе, 12 байт.

\
³³³,: D +++

Було весело, адже я взагалі не знаю Джеллі.

Як це працює

Я поняття не маю. Але ³ставить 100 у стек, ,ставить стек у масив чи щось таке, :може поєднати річ, Dперелічуючи кожну букву останньої цифри (якої не існує), а +++ - це для розваги. Перший і останній рядки не впливають на вихід :)

Спробуйте в Інтернеті!

Використовували це для підрахунку.


4
"Я знаю, що ³і що Dробить, але не вимагайте від мене WTF нічого іншого". - Це також було б моїм записом, якби я відповів на желе.
Magic Octopus Urn

6

CJam / Japt / bc, 2 байти, сума 97 (ASCII)

A

Спробуйте в Інтернеті (CJam), Спробуйте в Інтернеті (Japt) (спасибі @shaggy),

Версія bc працює в командному рядку, але не TIO.

Виходи 10

Джерело: A+ Space= 65 + 32 = 97

Вихід: 1+ 0 = 49 + 48 = 97


Це також працює в Japt.
Shaggy

Я не думаю, що це працює в Bc. Усі відомі мені версії наполягають на новому рядку.
Денніс

@Dennis Я щойно запустив bcпрограму, а потім набрав A . Чи повинен я називати це bc REPL?
geokavel


5

Кубічно , 4 байти, сума 141 (ASCII)

%44E

Виходи 3636. Спробуйте в Інтернеті! А ось перевірка суми ASCII, яку я використав.

Пояснення:

  • % означає 'сума друку номіналу як ціле число'.
  • 4 друкує суму всіх значень на обличчі НАЗАД (36) двічі.
  • E є неоперативним, просто використовується для отримання необхідної суми.

ха-ха, візьми мою пропозицію
Джузеппе,

5

Деякі з цих відповідей містять символи, які, ймовірно, будуть непомітними для вас (зокрема, ASCII 17), натисніть посилання TIO, щоб переглянути їх розташування.

Кляйн 100/110, 4 байти, сума 147

1
@

Спробуйте в Інтернеті!

Вихід:

1 1

Кляйн 201, 4 байти, сума 147

1
@

Спробуйте в Інтернеті!

Вихід:

1 1

Кляйн (будь-яка топологія), 5 байт, сума 221 (ASCII)

111@

Спробуйте в Інтернеті!

Це відбитки

1 1 1


Дякую тому, хто щойно відмовив від цього. Ти змусив мене ще раз поглянути на це, і тепер я це трохи покращив.
Опублікувати Rock Garf Hunter

@JoKing Я б сказав це повідомлення як власну відповідь. Це досить розумно і є не лише вдосконаленням того, що я зробив.
Опублікувати Rock Garf Hunter

4

Java 7, 88 85 байт, сума 7808 7617 7507 (ASCII)

class
w{public
static
void
main(String[]H){for(int
B=0;B<77;)System.out.print(B++);}}

Майже напевно гольф. Налаштувати її досить просто, оскільки у нас є деякі запасні змінні, такі як назва класу та назва параметру програмних аргументів, які ми можемо вільно змінювати.

Перевірте це в Інтернеті!

Спробуйте в Інтернеті!


Java 8, 84 байти, сума 7434

Кредит йде на Кевіну Крейсейну .

interface A{static void main(String[]G){for(int A=59;A-->0;)System.out.print("~");}}

Перевірте це в Інтернеті!

Спробуйте в Інтернеті!


Хороша робота, я можу переконатися, що вона працює тут . Буде +1, але я не голосую.
MD XF

Перетворивши його в Java 8, ви можете скористатися цим: interface A{static void main(String[]G){for(int A=59;A-->0;)System.out.print("~");}}для того, щоб пограти в гольф на 4 байти і знизити до 7434 як суму. Спробуйте тут. і Перевірте отриману суму.
Кевін Круїйсен

1
@KevinCruijssen Я хотів би зберегти свою відповідь на Java 7, але я додав ваше рішення Java 8 до своєї відповіді і зарахував вас. Якщо ви хочете розмістити себе, я можу видалити вашу відповідь.
Пік

3

Python 2 , 11 байт, сума байтів 854 (ASCII)

Код (із заднім рядком):

print'z'*7

Вихід (із заднім рядком):

zzzzzzz

Спробуйте в Інтернеті!


чому не працює розділ <code>? Я маю на увазі, що я можу побачити, як слід редагувати новий рядок під час попереднього перегляду, коли я редагую вашу публікацію, але ми не можемо бачити її у публікації.
В. Куртуа

@ V.Courtois Відмінність браузера (наприклад, працює у Firefox, не працює в Chrome). Ось чому я прямо вказав на новий рядок.
Anders Kaseorg

добре, здається, що це щось, що мені доведеться робити далі. Але чому тоді другий розділ добре реагує? : o
В. Куртуа


3

V , 2 байти, сума 255 (латинська1)

á

Спробуйте в Інтернеті!

Hexdump:

00000000: 1ee1                                     ..

Першим символом є ctrl-^або кодова точка LATIN1 / ASCII 0x1E. Другий символ - alt-aабо символ LATIN10xE1 . Ця програма виводить ÿ, що є0xFF в LATIN1.

Як це працює?

Перший персонаж - не-оп. Це взагалі не впливає на програму. Другий символ - команда додавання єдиних символів . Але ми не вказуємо, який символ слід додати. Отже, через неявні закінчення він додає символ, який V використовує для сигналізації, що програма закінчилася, що саме так і відбувається 0xFF.


Сума та кодова сторінка?
MD XF

@MDXF Це все в моєму поясненні ...
DJMcMayhem

3

05AB1E , 5 байт, сума 256 (05AB1E Base-255 Переклад)

ΔTnon

Спробуйте в Інтернеті!


Це виводи: 1606938044258990275541962092341162602522202993782792835301376

Яке використання кодової сторінки 05AB1E призводить до: [1, 6, 0, 6, 9, 3, 8, 0, 4, 4, 2, 5, 8, 9, 9, 0, 2, 7, 5, 5, 4, 1, 9, 6, 2, 0, 9, 2, 3, 4, 1, 1, 6, 2, 6, 0, 2, 5, 2, 2, 2, 0, 2, 9, 9, 3, 7, 8, 2, 7, 9, 2, 8, 3, 5, 3, 0, 1, 3, 7, 6]

Який є: 256


Де код: ΔTnon

З кодовими точками: [79, 29, 49, 50, 49]

Який є: 256


Яка кодова сторінка це? У цьому списку 1є 49 , а не 1 .
Денніс

@Dennis Я пішов з тим, що 05AB1E повернувся за функцію base(char, 255), я припустив (здавалося б, неправильно), що вони будуть одним і тим же.
Magic Octopus Urn

3

Таксі , 543 байти, сума 47124 (ASCII)

374 is waiting at Starchild Numerology.Go to Starchild Numerology:w 1 l 2 r 1 l 1 l 2 l.Pickup a passenger going to The Underground.'~' is waiting at Writer's Depot.Go to Writer's Depot:w 1 r 1 l 1 r.Pickup a passenger going to Cyclone.Go to Cyclone:n.[a]Pickup a passenger going to Cyclone.Pickup a passenger going to Post Office.Go to Zoom Zoom:n.Go to Post Office:w 3 l 2 r 1 l.Go to The Underground:n 1 r 1 l.Switch to plan "R" if no one is waiting.Pickup a passenger going to The Underground.Go to Cyclone:n 3 l 2 l.Switch to plan "a".[R]

Спробуйте в Інтернеті! ( Перевірка балів )

Вихід - 374 тильди ~.


3

Математика, 2 байти, сума = 101 (ASCII)

E + пробіл повертається e

E 

Математика, 2 байти, сума = 105 (ASCII)

це працює і для мене

I + простір повертається i

I 


2

Мозок-Флак (Дощ-Флак) , 79 байт

(((((((((((((((((((((((((((((((((()()()()){}){})))))))))))))))))))))))))))))))

Спробуйте в Інтернеті!

Це друкує 16та новий рядок 31 раз.

Brain-Flak (BrainHack) , 55 байт

(((((((((((((((((((((()()()()){}){})))))))))))))))))))#

Спробуйте в Інтернеті!

Це відбитки 16 пробіл у 18 разів.

Також 55 байт

((((((((((((((((((((((()()()){}){}))))))))))))))))))))

Спробуйте в Інтернеті!

Цей відбиток 12супроводжується пробілом 19 разів.


Сума та кодова сторінка?
MD XF

@MDXF Я не пригадую сум, але всі вони є ascii.
Опублікувати Rock Garf Hunter

Другий і третій не здаються правильними (вони друкують 19 і 20 разів згаданий рядок), хоча ви можете виправити їх обоє, дивіться тут .
ბიმო


2

Cubix , 20 байт, сума коду 1505

OuOOQ++OOOOU@>!OOO<

Містить недрукований символ DEL(ascii 127).

Qштовхає "(найбільша константа, доступна в кубіксі), потім кілька разів виводить ( O) 68або 102достатньо разів, щоб отримати її до 686868686868681021021021021021505; через деякий проб і помилки я зрозумів, що мені потрібно 81 бал більше .(Cubix no-op і ASCII 46), що призвело до необхідностіDEL , що досі не є опціоном у Cubix.

Спробуйте в Інтернеті!

На кубі:

    O u
    O O
Q + + O O O O U
@ > ! O O O  <
    . .
    . .

1
Я бачив "Cubix" і читав " кубічно ", мусив наздогнати себе, перш ніж я дав вам щедрість ... зітхнути +1
MD XF

@MDXF прийнято виклик
Джузеппе


2

dc, 7 байт, сума 720 (ASCII)

[my]fff

(91 + 109 + 121 + 93 + (102 * 3) = 720)

Виходи:

my
my
my

((109 + 121 + 10) * 3 = 720)


2

Carrot, 4 bytes, sum = 279 (ASCII)

]^*2

Try it online!

Prints ]]].


Way ahead of me in this one. I was no where close to getting a correct sum.
TheLethalCoder

@TheLethalCoder The ASCII sum of ^*3 was 187, so I tried solving x+187=4x, but that resulted in no integer solutions. So I went on to ^*2, which have me 186+x=3x which gave me x as 93, the code point of ]. That was all I did :)
Kritixi Lithos

Ah smart way of doing it :)
TheLethalCoder

I assume then that ¹^*1 also works. If I did my maths correctly that is. Although that is the unicode value not utf8.
TheLethalCoder

@TheLethalCoder I'd suppose it depends on the encoding, because Carrot uses ASCII by default.
Kritixi Lithos

2

Cubically, 3 bytes, sum = 105 (ASCII)

%4

The third byte is DLE, which has code point 16, so the code point sum of the source code is
37 + 52 + 16 = 105.

The program prints

36

whose code point sum is 51 + 54 = 105.

Try it online!


*implements DLE* sorry, invalid. :P +1
MD XF

Oh, I didn't see another Cubically solution here. Whoops!
TehPers

2

Cubix, 11 bytes, byte sum 954 (ASCII)

Code:

vOw~N(!@O^|

Output:

998877665544332211

Verified here!

Try it online!

Cubified:

    v O
    w ~
N ( ! @ O ^ | .
. . . . . . . .
    . .
    . .
  • N initializes the stack with 10
  • (! decrement and test for truthy
    • @ on zero halt
  • O^O output current number redirect to top face and output again
  • vw redirect back to the ( decrement to begin the loop again

Watch it run


1

Husk, 4 bytes, sum 334 (Husk SBCS)

up63

Output:

[3,7]

The value of a digit is given by 0x3? (where ? stands for that digit) and u,p,[,],, have values 0x75,0x70,0x5b,0x5d,0x2c - thus the sums are:

0x75 + 0x70 + 0x36 + 0x33        = 0x14e
0x5b + 0x33 + 0x2c + 0x37 + 0x5d = 0x14e

Try it online!


1

JavaScript (ES6), 6 bytes, sum = 385 (ASCII)

Y=>1E7

Outputs 10000000. There are other 6 byte answers such as h=>1e8. Try this code point counter:

<input oninput=o.textContent=[...this.value].reduce(function(s,c){return(s+c.charCodeAt())},0)><pre id=o>0



1

Gaia, 4 bytes, sum 176 (SBCS)

6 5%

Explanation

In Gaia's codepage, linefeed has a code point of x7F (127 in decimal). Printable ASCII characters have the same code point as in ASCII.

This computes 6 modulo 5, which is 1, and prints 1 with a trailing linefeed.

Byte values of the characters in the codepage (in decimal):

6 5%: 54 + 32 + 53 + 37 = 176

1: 49 + 127 (linefeed) = 176


1

Trumpscript, 131 bytes, sum 10600 (ASCII)

They wants to make war 110000000;make dark 10000000;as long as,dark less war;:make dark,dark plus 1000000;say "00"!america is great

Is this real life?

Check with this.

Thanks @MagicOctopusUrn for telling me that exists.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.