ক্যালকুলেটর যা চর মান যোগ করে


18

কার্য

একটি ক্যালকুলেটর তৈরি করুন, এটি কোনও ফাইল, স্টিডিন বা যা কিছু থেকে কোনও স্ট্রিং নেয় এবং অক্ষরের সমস্ত মান যুক্ত করে।

উদাহরণ

Input
Hello World!

Output
1085

বিধি

ক্যালকুলেটরকে কেবল ASCII এনকোডিং গ্রহণ করতে হবে।

সংক্ষিপ্ততম কোডটি জয়ী।

মন্তব্য

M.buettner এর মন্তব্য সম্পর্কে, আমার বলা দরকার, আমি মাল্টিবাইট অংশটি ভাবিনি।
সুতরাং আমি পাশাপাশি বোনাস জিনিস হিসাবে এটি ছেড়ে।
লিখিত হিসাবে ক্যালকুলেটর চালানো উচিত, তাই সংকলন বা ব্যাখ্যা করার আগে সংশোধন করার প্রয়োজন নেই।

বোনাস

সিনথেটিকাকে ধন্যবাদ , এখানে আরও একটি বোনাস দেওয়া হয়েছে,

আপনি যখন তার কোডটি ইনপুট জিততে হিসাবে ব্যবহার করেন তখন সর্বনিম্ন আউটপুট থাকে এমন প্রোগ্রাম ।

আমি পুরোপুরি এটি পরিবর্তন করতে চাই না।

আপনি এটি ইউটিএফ -8 এ (ডান) মান আউটপুট দেওয়ার জন্য অতিরিক্ত লিখলে আপনি একটি তারকা পান।

কোডটি আমার ল্যাপটপে দ্রুততম কার্যকর করে (লেনোভো যোগ 13 ইন্টেল কোর আই 5 3317U 1.7Ghz, 8 জিবি র‌্যাম, 128 জিবি এসএসডি, ইন্টেল এইচডি 4000, উইন্ডোজ 8) একটি তারকা পায়।

ওয়েব কোডগুলি প্রথমে আইই 11 এর অধীনে চক্রের সাথে এবং তারপরে ফায়ারফক্স 29.0.1 এ স্পাইডারমোনকি সহ চলবে

লিনাক্স কোডটি রাস্পবিয়ান সহ একটি রাস্পবেরি পাইতে চলবে।

টেস্টস্ট্রিংটি হ'ল:

q/%8hnp>T%y?'wNb\},9krW &D9']K$n;l.3O+tE*$*._B^s!@k\&Cl:EO1zo8sVxEvBxCock_I+2o6 yeX*0Xq:tS^f)!!7=!tk9K<6#/E`ks(D'$z$\6Ac+MT&[s[]_Y(`<g%"w%cW'`c&q)D$0#C$QGf>?A$iawvc,}`9!('`c&q)D$0#C$QGf>?A$iawvc,}`9!(

মজাদার কোডিং :)

Bonusscoring

আমি এই শনিবারে স্কোরিং করার পরিকল্পনা করছি তাই 07.06.14, যে তারিখের পরে সমস্ত উত্তর বোনাস পয়েন্ট পাবে না;)

আমি এখানে পরীক্ষার জন্য যে কোডটি ব্যবহার করব তা ডাউনলোড করতে পারেন বিনা দ্বিধায় এবং এটি উন্নত করতে :)

বোনাসের কারণে সামান্য আপডেট, আমার ল্যাপটপ আংশিকভাবে ভেঙে গেছে তাই আমি সম্ভবত পরবর্তী সপ্তাহান্তে এটি করব, এর জন্য আমি সত্যিই দুঃখিত :(


3
Hello World!আমার কম্পিউটারে ASCII মানগুলির জন্য দুটি পৃথক ভাষা ব্যবহার করার জন্য আমি 1085 পেয়েছি।
কাইল কানোজ

1
তিনি সম্ভবত '!' যুক্ত করতে ভুলে গেছেন। সম্পাদনা আপনি 3 সেকেন্ড দ্রুত ছিল ...
gxtaillon

1
অনুগ্রহ করে কেউ কি বোঝাতে পারবেন?
কেনার্ড

3
আমার ধারণা হ'ল ডাউনভোটগুলি ইঙ্গিত দেয় যে এটি আসলে কোনও ভাল সমস্যা নয়।
কাইল কানোজ

5
@ কেনার্ড মূলত, কারণ বেশিরভাগ ভাষায় এটি কিছুটা তুচ্ছ (যেমন আপনি ইতিমধ্যে যে জমা দিয়েছেন সেটির দৈর্ঘ্য থেকে আপনি দেখতে পাচ্ছেন)
মার্টিন ইন্ডার

উত্তর:


10

গল্ফস্ক্রিপ্ট, 4 টি অক্ষর

{+}*

*সমস্ত অক্ষর যুক্ত করতে কেবল ভাঁজ অপারেটর ( ) ব্যবহার করে ।

যদি এটি খালি স্ট্রিংয়ের সাথে কাজ করে তবে 9 টি অক্ষর:

{{+}*}0if

খালি স্ট্রিংয়ের সাথে কাজ করে এমন বিকল্প 6-চরিত্রের সংস্করণ সরবরাহ করার জন্য @ পিটারটেলরকে ধন্যবাদ:

0\{+}/

খালি স্ট্রিংয়ে কাজ করে না।
হাওয়ার্ড

@ হাওয়ার্ড ভাল পয়েন্ট; সম্পাদনা করা হয়েছে।
ডোরকনবব

0\{+}/খালি স্ট্রিং সমর্থন করে
পিটার টেলর

1
@ ডুরকনব বোকা প্রশ্নটির জন্য দুঃখিত, আমি কীভাবে ডেটা ইনপুট করব? আমি golfscript.apphb.com
কেনার্ড

2
@ এমমিবিড একটি অদ্ভুত আকৃতির চোখের একটি সাইক্লোপস। :- পি (বা, গল্ফস্ক্রিপ্টে, "অদলবদল এবং প্রতিটি যোগ করুন!")
ডোরকনব

7

এপিএল (8)

+/⎕UCS⍞

ব্যাখ্যা:

  • +/ সমষ্টি হল
  • ⎕UCS ইউনিকোড মান
  • অক্ষর ইনপুট

এর ফলাফল কী হবে Hello World!?
কেনার্ড

@Knerd: 1085। এটি অন্য আউটপুট দিলে এটি সঠিক হবে না। এটি অক্ষরগুলির ইউনিকোড কোডপয়েন্টগুলির মানগুলির সমষ্টি করে।
মেরিনাস

ঠিক আছে, আমি এর অর্থটি পেলাম না ;)
কেনার্ড

1
@ কেনার্ড: মানে কীবোর্ড থেকে একটি লাইন পড়ুন
মেরিনাস

আপনি কি এপিএল দোভাষীকে বিনামূল্যে জানেন?
কেনার্ড

6

হাস্কেল 36

main=interact$show.sum.map fromEnum

কোথা থেকে লেখাটি পড়ে?
কেনার্ড

stdin। $ printf "Hello World!" | ./charsum
gxtaillon

ঠিক আছে, আমি এটি আমার উইন্ডোজ মেশিনে চালাতে পারি না, আমি যখন বাড়িতে থাকি তখন আরপিআইতে চেষ্টা করে যাব
কেনার্ড

আমি যখন আপনার কোডটি কার্যকর করি তখন আমি কেবল "হ্যালো ওয়ার্ল্ড!" স্ট্রিংটি পাই! আউটপুট হিসাবে। এটি আমার ECHO "Hello World! | ghci charsum.hs
কমান্ডলাইন

1
এর পরিবর্তে interactএবং এর showপরিবর্তে getContents>>=print:main=interact$show.sum.map fromEnum
ফ্লোনক

6

শেল + জিএনইউ সরঞ্জামগুলি, 29 বাইট

echo `od -An -tuC`|tr \  +|bc

স্টিডিন থেকে ইনপুট নেয়:

$ printf "%s" 'Hello World!' | ./addchars.sh 
1085
$ 

নিজস্ব স্কোর: 2385


সি, 52 বাইট

c;main(p){while(~(p=getchar()))c+=p;printf("%d",c);}

(কিছু সতর্কতা উত্পাদিত) দিয়ে সংকলন করুন:

gcc addchars.c -o addchars

স্টিডিন থেকে ইনপুট নেয়:

$ printf "%s" 'Hello World!' | ./addchars 
1085 $ 

নিজস্ব স্কোর: 4354


এটি দুর্দান্ত উত্তর। জিএনইউ সংকলক সহ কোডব্লকগুলি সর্বদা অভিযোগ করে থাকে যে ভেরিয়েবলগুলির কোনও ধরণের নেই যেমন ইন্ট সি, মেইন (ইনট পি)। সুতরাং আমি মনে করি এগুলি আপনার উত্তরের অন্তর্ভুক্ত করা উচিত।
বাচ্চুসবিলে

@ ব্যাকছুবিলে আমি সংকলনের সতর্কতা সম্পর্কে একটি নোট যুক্ত করেছি, তবে আমি মনে করি যে সি এ গল্ফ করার সময় এটি সাধারণত কোর্সের সমতুল্য হয়। যতক্ষণ কোড সঙ্কলিত হয় এবং প্রত্যাশা অনুযায়ী চলে, ততক্ষণ সতর্কতাগুলি এড়ানো যায়। কোডগল্ফ.স্ট্যাকেক্সেঞ্জাওয়েটা / a/ 2230/11259 এবং কোডগলফ.স্ট্যাককেচেঞ্জাওনা / a / 2204/ 11259 দেখুন । অবশ্যই প্রোডাকশন কোড সম্পূর্ণ আলাদা একটি বিষয়।
ডিজিটাল ট্রমা

@ ডিজিটালট্রামা those সমস্ত জায়গাগুলি আসলেই প্রয়োজনীয়? শেলটি সাদা স্থানটিকে উপেক্ষা করে নতুন পরামিতিগুলি চিহ্নিত করতে ব্যবহার করতে পারে না?
আশ্বিন গুপ্ত

@ আশ্বিনগুপ্ত আপনি কি এই odআদেশের কথা বলছেন ? od -AntuCহিসাবে একই না od -An -tuC
ডিজিটাল ট্রমা

@ ডিজিটালট্রামা হ্যাঁ আমি ছিলাম। আমি বলতে od-An-tuCod -An-tuC
আশ্বিন গুপ্ত

6

জাভাস্ক্রিপ্ট ( ES6 ) 51

alert([...prompt(x=0)].map(y=>x+=y.charCodeAt())|x)

@nderscore আপনি কি ...আগে কি করতে পারেন ব্যাখ্যা করতে পারেন prompt? এটি কি নতুন ES6 জিনিস বা এটি প্রাক ES6?
ওয়েলওয়েস্ট

1
@ ওলিওয়েস্ট এটি একটি স্প্রেড অপারেটর বলা হয় এবং এটি ES6 খসড়ার অংশ।
nderscore

@nderscore সুতরাং আমি যদি স্প্রেড অপারেটর সিনট্যাক্সটি বুঝতে পারি তবে আপনার ব্যবহারটি [...prompt(x=0)]0 এর একটি ডিফল্ট মান (যা পরে যোগফলে ব্যবহৃত হবে) দিয়ে প্রম্পট গ্রহণ করেছে এবং অক্ষরের অ্যারে হিসাবে সেই ইনপুটটি প্রয়োগ করে ... ? কোন প্রযুক্তিগতভাবে prompt(x=0).split("")ঠিক একই হবে ?
ওয়েলওয়েস্ট

1
@ ওয়েলওয়েস্ট এর prompt(x=0)অর্থ "সেট x থেকে 0, x থেকে 0 সেট promptকরার মান সহ কল করুন ", যা বলতে হয়, 0 এটি লেখার সমতুল্য হবে(x=0,prompt(x))
সাইওস

6

জিএস 2 , 1 বাইট

d

d( 0x64/ sum) অবশ্যই স্ট্যান্ডার্ড ইনপুটটিতে সমস্ত বাইট যোগ করে।


5

পাইথন 3 - 28 বাইট

print(sum(map(ord,input())))

উদাহরণ রান:

$ ./sum_string.py <<< 'Hello World!'
1085

, Stdin থেকে ইনপুট পায় mapগুলি ordএটি ফাংশন প্রতিটি অক্ষর এর ASCII মান পেতে, sumএটা এবং S printগুলি।


নিনজা, আমি ঠিক একই ধারণা ছিল। তার জন্য +1।
seequ

@ দ্যারেয়ার আমি আমার লম্বা হওয়া সত্ত্বেও তাই করেছি কারণ আমি পাইথন ২.7 ব্যবহার করেছি। আমি মরিচা হয়ে যাচ্ছি;)
Junuʎs

@ সিনথেটিকা ​​আমি সর্বদা পাইথন ২.7 ব্যবহার করি, যার উত্তর পাওয়া যেতprint sum(map(ord,raw_input()))
15-18

1
@TheRare যা আমার সঠিক উত্তর ছিল;)
ɐɔıʇǝɥʇuɐɔıʇǝɥʇs

নিতপিকিং এখানে, তবে আপনি এটিকে পরিবর্তন map(ord,input())করে আরও ভাল পারফর্ম করতে পারেন input().encode()। বাইটস অবজেক্টগুলি এখনও সংক্ষিপ্ত করা যায়, এবং এটি একই দৈর্ঘ্য অবধি থাকে।
সিজেফুরে

5

8086 সমাবেশ (16-বিট) - 47 41 বাইট

test.comফাইলের বিষয়বস্তুগুলি হ'ল :

98 01 c3 b4 01 cd 21 3c 0d 75 f5 89 c7 c6 05 24
89 d8 b1 0a 4f 31 d2 f7 f1 80 ca 30 88 15 09 c0
75 f2 89 fa b4 09 cd 21 c3

আসল কাজ প্রথম 11 বাইটে করা হয়; দশমিক স্বরলিপিতে ফলাফল মুদ্রণের জন্য আমার বিশ্রাম দরকার।

উত্স কোড (ডস debug.comএসেম্বলারের ইনপুট হিসাবে দিন ):

a
; input the string; count the sum
    cbw
    add bx, ax
    mov ah, 1
    int 21
    cmp al, d
    jne 100
; Prepare for output: stuff an end-of-line marker
    mov di, ax
    mov [di], byte 24
    mov ax, bx
    mov cl, a
; 114
; Divide by 10; write digits to buffer
    dec di
    xor dx, dx
    div cx
    or  dl, 30
    mov [di], dl
    or  ax, ax
    jne 114
; Print the string
    mov dx, di
    mov ah, 9
    int 21
    ret

rcx 29
n test.com
w
q

কোডটিতে কিছু নোট:

  • কেবলমাত্র একটি লাইন পরিচালনা করে (13-অব-লাইন অক্ষর পর্যন্ত); কোনও লাইন শেষ না হলে স্তব্ধ হয়ে যায়
  • শুধুমাত্র 7-বিট অক্ষর সমর্থিত (ফলাফল অন্যথায় ভুল হয়)
  • খালি ইনপুট জন্য আউটপুট 0
  • K৪ কে-র চেয়ে বেশি আউটপুট হ্যান্ডেল করতে পারে না
  • 0x10d ঠিকানায় নির্দেশাবলী নিজেই ওভাররাইট করে (খাঁটি কাকতালীয়)
  • এই প্রোগ্রামটি একত্রিত করতে এবং পরিচালনা করতে ডসবক্সের মতো ডস এমুলেটর ব্যবহার করতে হবে

কীভাবে বুঝতে পারছেন? ও
কনার্ড

5

সিজেএম, 3 বাইট (সমষ্টি 260)

q1b

আপনি এটি অনলাইনে চেষ্টা করতে পারেন ।
2 টি অক্ষর কেটে দেওয়ার জন্য জিমি 23013 ধন্যবাদ

ব্যাখ্যা:

q     read the input into a string  
1b    convert from base 1, treating each character as its numeric value

1
q1bখাটো হয়।
জিমি 23013

4

বেফুঙ্গ98, 6 বাইট, যোগফল: 445

2j@.~+

যে কোনও দোভাষী ঠিক থাকতে হবে। আমি সিসিবিআই ব্যবহার করি ।

নিম্নলিখিত হিসাবে ব্যবহার করুন:

printf 'Hello World!' | ccbi calc.fg

মাল্টিবাইট চর এবং খালি স্ট্রিংয়ের জন্য কাজ করে।

ব্যাখ্যা

  • 2j- পরবর্তী দুটি নির্দেশের উপর ঝাঁপ দাও ( @এবং .- নীচে দেখুন)
  • ~ - স্ট্যাকের উপরের চরটি রাখুন
  • +- বর্তমান যোগফলে নতুন চরের কোড মান যুক্ত করুন। নির্দেশ পয়েন্টার শুরুতে মোড়কে দেয় এবং চক্রটি পুনরাবৃত্তি করে
  • যখন ~কোনও ইওএফ-এর মুখোমুখি হয় এটি পয়েন্টারের দিককে উল্টো করে দেয় এবং দুটি "লুকানো" নির্দেশাবলী কার্যকর করা হয়:
  • . - যোগফল মুদ্রণ করুন
  • @ - প্রস্থান

4

রুবি, 13 12 বাইট

p~9+gets.sum

sumএকটি অন্তর্নির্মিত ফাংশন যা একটি স্ট্রিংয়ের অক্ষরের যোগফল দেয়। getsএর রিটার্ন মান শেষে নতুন লাইনের জন্য অ্যাকাউন্টে 10 জমা করে ।

(4 বছর পরে পরিবর্তিত x-10হয়ে সম্পাদিত ~9+x... এর মান ~9হ'ল -10, তবে এটি আমাদের pএকটি বাইট সংরক্ষণ করে এবং এর যুক্তির মধ্যে স্থানটি সরিয়ে দেয় lets )


আমি রুবির সাথে মোটেই পরিচিত নই, আপনি কি নিজের কোডটি ব্যাখ্যা করতে পারবেন?
কেনার্ড

1
একটি হ'ল একটি ফাংশন যা স্ট্যান্ডার্ড থেকে স্ট্রিং পড়ে একটি নতুন লাইন পড়া না হওয়া পর্যন্ত এটি স্ট্রিং দেয় returns স্ট্রিং # টি প্রতিটি অক্ষরের মান যুক্ত করে, যা একটি ফিক্সনাম দেয়। ফিক্সনাম # - কেবল বিয়োগফল। pএকটি লাইনে কোনও কিছুর ডিবাগ মান আউটপুট করার জন্য একটি পদ্ধতি।
কাইল স্মিথ

2

পাওয়ারশেল - 27

[char[]]$args[0]|measure -s

উদাহরণ

> SumChars.ps1 'Hello World!'

Count    : 12
Average  : 
Sum      : 1085
Maximum  : 
Minimum  : 
Property : 

26 যদি আপনি [char[]]"$args"|measure -sকেবলমাত্র একটি $ আরগ এন্ট্রি থাকে ততক্ষণ ব্যবহার করেন।
TessellatingHecler

2

জুলিয়া - 11 7 টি অক্ষর, ফলাফল যোগফল = 943 536

যেহেতু প্রশ্নটি আপনার যে কোনও উত্স থেকে ইনপুট আসতে দেয়, তাই আমি একটি বিদ্যমান ভেরিয়েবল চয়ন করি। ধরে নিন যে Aএতে স্ট্রিং রয়েছে যা আমরা মূল্যায়ন করতে চাই।

sum(A)1

যেমনটি দেখা যাচ্ছে, আপনি সরাসরি স্ট্রিংয়ের যোগফল করতে পারেন, এবং এটি মূল্যায়ন করবে ... তবে, অক্ষরের যোগফল যেভাবে পরিচালনা করা হয় তার কারণে, যদি স্ট্রিংয়ে একটি বিচিত্র সংখ্যক অক্ষর থাকে তবে এটি একটি অক্ষরকে আউটপুট দেয়, বরং কোনও ধরণের পূর্ণসংখ্যার চেয়ে। এর মতো, আমরা এটি 1 দ্বারা গুণিত করে আন্তঃকে কাস্ট করতে বাধ্য করি।

পুরাতন রুপ:

sum(A.data)

একটি হেক্সাডেসিমাল স্বরলিপিতে আউটপুট আসবে (যোগফল 256 এর চেয়ে কম 0x??হলে এটি হবে , অন্যথায় এটি 8 বাইট হিসাবে হবে 0x????????)। কোডটি যেখানে ফলাফল ব্যবহৃত হয় সেখানে যদি এটি ব্যবহার করা হয় তবে এটি অন্য যে কোনও সংখ্যার মতোই কাজ করবে (এটি জুলিয়া স্বাক্ষরযুক্ত ইনটগুলি প্রদর্শন করে ঠিক তেমন)।

দশমিকের ফলাফলের মান দেখতে, উপরের int()হিসাবে সংযুক্ত করুন , হিসাবে int(sum(A.data))

যিনি জুলিয়াকে জানেন না এমন কারও জন্য Aআপনি ভেরিয়েবলের সাথে অন্য অ্যাসাইনমেন্টগুলি ঠিক একইভাবে নির্ধারণ করেন । সুতরাং, A="Hello World!"বা A="sum(n.data)"। যে ক্ষেত্রে আপনাকে অক্ষর "বা 'অক্ষর স্থাপন করতে হবে সেখানে একাধিক বিকল্প রয়েছে, যার মধ্যে সবচেয়ে সহজ (কারণ এটি জুলিয়া স্ট্রিং লিটারেলের সংক্ষিপ্তসারগুলির জ্ঞানের প্রয়োজন A=readline()এড়ায় ) এর পরে কেবল স্ট্রিনে এসটিডিএন টাইপ করুন (জিতেছেন) যদিও নিউলাইনগুলি হ্যান্ডেল করুন)। নিউলাইনের জন্য পলায়ন ক্রমটি যথারীতি হ'ল \nতবে আমি বিশ্বাস করি না আপনি এটি রিডলাইন () দিয়ে ব্যবহার করতে পারবেন।


Damশ্বর অভিশাপ চতুর সমাধানের জন্য +1 you আপনি কী পোস্ট করতে পারেন, ভেরিয়েবলের জন্য পরীক্ষার মানটি কীভাবে বরাদ্দ করবেন n? আমি জুলিয়াকে মোটেও জানি না;)
কেনার্ড

@ কেনার্ড - আমি এটি সম্পাদনা করেছি Hope আশা করি এটি সহায়তা করবে।
গ্লেন ও

দুর্দান্ত, আপনাকে ধন্যবাদ। আমি এটি পরে পরীক্ষার চেষ্টা করি :)
কেনার্ড

ক্ষুদ্র পরিবর্তন - থেকে সুইচড পরিবর্তনশীল nথেকে A988 943. থেকে পরিসমাপ্তি সমষ্টি কমাতে
গ্লেন হে

ঠিক আছে, অনেক বড় পরিবর্তন - আমি বুঝতে পেরেছি যে অক্ষরগুলি বের করে না দিয়ে আপনি সরাসরি স্ট্রিংয়ের যোগফল দিতে পারেন .data; তবে তারা চরিত্রগুলি হওয়ায়, তারা একটি বিচিত্র সংখ্যক চরিত্রের জন্য একটি চরিত্রের ফলাফল তৈরি করে। 1 দ্বারা গুণিত এটি সংশোধন করে।
গ্লেন ও

2

কে 5, 2 বাইট (ফাংশন), 5 বাইট (প্রোগ্রাম)

ক্রিয়া

+/

কার্যক্রম

+/0:`

এই চ্যালেঞ্জ পোস্ট হওয়ার আগে বা পরে কে 5 তৈরি হয়েছিল কিনা তা নিশ্চিত নয়। নির্বিশেষে ... এই দুর্দান্ত!

কে 5-তে, আপনি যদি স্ট্রিংগুলিতে গাণিতিক ক্রিয়াকলাপ সম্পাদন করেন তবে এটি অক্ষরগুলিকে তাদের ASCII কোডগুলিতে রূপান্তর করে। সুতরাং এটি কেবল যোগ অপারেটরটি ব্যবহার করে +/(প্রকৃতপক্ষে এটি আরও + বেশি)।


2

মতলব / অক্টোব 4 বাইট (বোনাস: 405)

এই কোডটি একটি বেনামি ফাংশন, এটি কাজ করে, এটি একটি স্ট্রিং নেবে এবং প্রয়োজনীয় নম্বরটি ফিরিয়ে দেবে।

@sum

আমি gs2উত্তর সম্পর্কে নিশ্চিত নই , তবে জুলিয়া উত্তরের মতো একই পদ্ধতির সাথে আমার এখনও লেখা উচিত sum(A)। আমার মনে হয় sumএকা ঠিক নেই (বৈধ কোড = এমনকি হবে না)।
flawr

2

যান (৫৯ টি অক্ষর)

func d(s string)(t int){for _,x:=range s{t+=int(x)};return}

গো-এ থাকা সমস্ত কিছুই ডিফল্টরূপে utf8। Through ডিলিমিটারগুলিতে কোডটেক্সট নিজেই চালিত হয়: 5399 এর আউটপুট দেয়।


আমাকে বলতে হবে আমি বরং অবাক হয়েছি এর math.Sumসাথে ব্যবহার করার mapমতো বা এর মতো কোনও নেই
বিড়াল


2

গোল> <> , 4 বাইট (প্রতিযোগী নয়)

দ্রষ্টব্য: এই ভাষা চ্যালেঞ্জের চেয়ে নতুন।

iEh+

এটি কি 'গল্ফিশ' এর মতো উচ্চারণ করা হয়?
বিড়াল

@ কেট হ্যাঁ, এটি গল্ফিশ।
এলোমেলো

@ আরন্দোমরা কি সেই "গোল • ফিশ" বা "গল্ফ • ইশ"? গোলের মতো কোনও মাছের মতো, বা গল্ফের মতো কোনও রকম?
সাইওস


2

পাইথন, 24 বাইট

এটি এখন পর্যন্ত যে কোনও পাইথন সমাধানের চেয়ে ছোট: একটি নামবিহীন বেনামে ফাংশন, যা স্ট্রিংটিকে আর্গুমেন্ট হিসাবে গ্রহণ করে এবং যোগফলটি প্রদান করে।

lambda x:sum(x.encode())

এটি অনলাইন চেষ্টা করুন!

প্রথমে x.encode()এটি একটি bytesবস্তুতে রূপান্তরিত করে । তারপরে, sumচর-কোড মানগুলি যুক্ত করে। এটি যেহেতু ল্যাম্বডা ফাংশন, তাই মানটি প্রত্যাবর্তিত হয়।

অতিরিক্তভাবে, lambda x:sum(map(ord,x))একই বাইট কাউন্টের জন্য একটিও থাকতে পারে ।


2

SML, 42 36

সবেমাত্র অন্য একটি ভাষা যুক্ত করা হচ্ছে।

fun$x=foldl op+0(map ord(explode x))

স্ট্রিংকে চর অ্যারে রূপান্তর করে, প্রতিটি মানের ascii সংখ্যা গণনা করে এবং সমস্ত ascii সংখ্যার যোগফল গণনা করে।


1
আপনি কিছু স্পেস এবং অগ্রণী ড্রপ করতে পারেন ;। 36 বাইট: tio.run/##DcpBCoAgEAXQq0zRQomiC7ivdYuWEWgRfB2xKby9uXzwHo/…
লাইকনি

1

সি 32

f(char*s){return*s?*s+f(s+1):0;}

main(int argc,char **argv){return(argc?main(0,&(argv[1])):(**argv?**argv+main(0,argv)+((*argv)++?0:0):0));}(107 অক্ষর) যদিও এটি কোনও কারণে প্রথম চরিত্রটিকে উপেক্ষা করে। এছাড়াও, পসিক্সের প্রস্থান কোডগুলি কেবল 8 টি বিট; বাশ ইন echo $?,।

নিয়মগুলি একটু বিস্তৃত ছিল তাই আমি প্রধান ব্যবহার করিনি। আমি সম্ভবত আরও ছোট কিছু নিয়ে কাজ করব
বেবি

@ তবে আমি কী প্রয়োজন তা পরিষ্কার করার জন্য, নিয়মগুলি কিছুটা পরিবর্তন করেছি;)
কেনার্ড

1

ডি (ফাংশন: 60)

এটি জয়ের জন্য অবশ্যই এটি না।

ধরে নিচ্ছি এটি একটি সম্পূর্ণ প্রোগ্রাম হওয়ার দরকার নেই

int c(string i){int s;foreach(e;i){s+=cast(int)e;}return s;}

তাই বলা হয়

void main ()
{
    import std.stdio;
    auto hw = "Hello World!";
    writefln("%s = %d", hw, c(hw));
}

আউটপুট:

Hello World! = 1085

ডি (প্রোগ্রাম: 133)

লাইন বিরতি গণনা করে না।

void main(){import std.algorithm,std.stdio;stdin.byLine.map!((a){int s;foreach(e;a){s+=cast(int)e;}return s;}).reduce!"a+b".writeln;}

পাঠযোগ্যতার জন্য আরও শ্বেতস্পেস এবং দীর্ঘতর পরিবর্তনশীল নাম সহ

void main () {
    import std.algorithm, std.stdio;

    stdin.byLine
        .map!((line) {
                int sum;
                foreach (ch; line) {
                    sum += cast(int)ch;
                }
                return sum;
            })
        .reduce!"a+b"
        .writeln;
}

ইনপুটটিতে লাইন বিরতি সমর্থন করার জন্য, আমি হয় byLine(KeepTerminator.yes)- 20 অক্ষরের জন্য সঠিক উপায় - বা '\n'আমার লাইনে একটি যুক্ত করতে পারি - যা একক-লাইন ইনপুটটি ভেঙে দেয় এবং 18 টি অক্ষরের জন্য সিআরএলএফের কারণে উইন্ডোজকে ভুল যোগফল দিতে পারে।


আপনি যদি জেনে থাকেন তবে পোস্ট করার জন্য +1, আপনি জিতবেন না
কেনার্ড

1

জাভাস্ক্রিপ্ট (ES6) 54 58

alert([].reduce.call(prompt(),(v,c)=>v+c.charCodeAt(0),0))

Nderscore ধন্যবাদ 54 বাইট :

alert([...prompt()].reduce((v,c)=>v+c.charCodeAt(),0))

ভাল কাজ করে, আমি এখনই এটি চেষ্টা করেছি es6fiddle.net
কেনার্ড

আপনি কেবল ফায়ারফক্স ব্যবহার করতে পারেন;)
কোর 1024

1
আমি তখন কাজে ছিলাম: ডি
কেনার্ড

1
54:alert([...prompt()].reduce((v,c)=>v+c.charCodeAt(),0))
nderscore

1
এটি এখন 51 এ নেমে গেছে :)alert([...prompt(x=0)].map(y=>x+=y.charCodeAt())|x)
nderscore

1

দেলফি ( 87 83)

function x(s:string):int64;var c:char;begin x:=0;for c in s do x:=result+ord(c)end;

Ungolfed

function x(s:string):int64;
var
  c:char;
begin
  x:=0;
  for c in s do
    x:=result+ord(c)
end;

ফলাফলের সাথে চরের মান Sযুক্ত করার মাধ্যমে লুপগুলি ord। যেখানে x == ফলাফল

সম্পাদনা:

চারটি অক্ষর সংরক্ষণ করেছেন int64 এ গিয়ে যোগফলকে যোগফল পরিবর্তন করে the


আপনার কাছে কি ডেল্ফির বিনামূল্যে সংস্করণ রয়েছে (আপনার সংস্করণটি এখানে sertোকান) উপলভ্য?
কেনার্ড

হুম .. সত্যিই দুঃখিত না। তবে আমি যেখানে-সেখানে ঘটবে তা অন-গল্ফ ব্যাখ্যা করতে পারি এবং যদি আপনি চান তবে কিছু টেস্টকেসগুলি করুন। ফ্রি পাস্কেলের কম-বেশি একই বাক্য গঠন রয়েছে যাতে আপনি এটি করতে পারেন।
তেউন প্রোঙ্ক

ঠিক আছে, আমি এটি পরীক্ষা করে দেখতে চাই
কেনার্ড

1

কে (৮ টি চর)

+/6h$0:0

প্রশ্ন অনুবাদ

sum `int$read0 0

বোনাস মান:

k)+/6h$0:0
+/6h$0:0
438i

1

জে (7)

এত কাছে, এখনও পর্যন্ত ... ওহ ভাল, আমার ধারণা 7 যথেষ্ট শালীন, যেহেতু এই উত্তরটি খালি স্ট্রিংগুলিও গ্রহণ করে। (আমি আমার ভ্যারিয়েবলের বাক্যটি ইনপুট হিসাবে ব্যবহার করছি from a file, stdin or whatever)

+/a.i.b

ব্যাখ্যা:

a.

┌┬┐├┼┤└┴┘│─ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������

a. সমস্ত ASCII অক্ষর রয়েছে।

   'people' i. 'pow'
0 2 6

x i. yপাইথনের মতোই [x.index(i) for i in y]

   a. i. 'Hello World!'
72 101 108 108 111 32 87 111 114 108 100 33

তারপরে, এর ASCII মানগুলির একটি অ্যারেতে a. i. yরূপান্তর yকরে

   +/1 2 3 4 5 6
21

+/মত sum: +/1 2 3 4 5 6মানে1+2+3+4+5+6

   +/ a. i. 'Hello World!'
1085

কর্মে পুরো জিনিস

বোনাসের জন্য:

   b=:'+/a.i.b'
   +/a.i.b
482

খারাপ না, আমার ধারণা

   b=:'0\{+}/'
   +/a.i.b
478

আচ্ছা

   A=:'+/a.i.A'
   +/a.i.A
449

ধন্যবাদ @ অ্যালগোরিদমশর্ক

    A=:'+/3 u:A'
    +/3 u:A
413

ধন্যবাদ @ মারিনাস


দুর্দান্ত ব্যাখ্যার জন্য +1। একটি ছোট্ট প্রশ্ন, আমি কোথায় জে কে কার্যকর করতে পারি?
কেনার্ড

1
নির্মাতাদের কাছ থেকে @ কিন্ডার ( jsoftware.com ) আমার ধারণা, আমি কোনও অনলাইন দোভাষীকে চিনি না। (মজার ঘটনা: তাদের অ্যান্ড্রয়েডের জন্য একটি অফিসিয়াল কনসোল রয়েছে)) jsoftware.com/download/j801
10uʎs

@ সাইনথেকটিকা এটি দুর্দান্ত: ডি এখন আমার একটি অ্যান্ড্রয়েড স্মার্টফোন দরকার: পি
কেনার্ড

পুনঃনামকরণ করা bথেকে Aএর 449. একটি স্কোর ফলাফল
algorithmshark

@ এলগোরিদিমশার্ক ওহ, ঠিক আছে! আমি আপাতত সেই
তারকাটিকে

1

আর, 35 টি অক্ষর (3086 এর সমষ্টি) 26 বাইট (2305 এর সমষ্টি)

sum(utf8ToInt(readline()))

readline()একটি চরিত্র scan(,"")কিন্তু চেয়ে দীর্ঘscan ডিফল্টরূপে স্পেসে ইনপুট বিভক্ত করুন।

ব্যবহার:

> sum(utf8ToInt(readline()))
Hello World!
[1] 1085
> sum(utf8ToInt(readline()))
sum(utf8ToInt(readline()))
[1] 2305
> sum(utf8ToInt(readline()))
q/%8hnp>T%y?'wNb\},9krW &D9']K$n;l.3O+tE*$*._B^s!@k\&Cl:EO1zo8sVxEvBxCock_I+2o6 yeX*0Xq:tS^f)!!7=!tk9K<6#/E`ks(D'$z$\6Ac+MT&[s[]_Y(`<g%"w%cW'`c&q)D$0#C$QGf>?A$iawvc,}`9!('`c&q)D$0#C$QGf>?A$iawvc,}`9!(
[1] 14835

1

জাপট , 6 বাইট (প্রতিযোগী নয়)

এই উত্তরটি প্রতিযোগিতামূলক নয় কারণ এই চ্যালেঞ্জ পোস্ট হওয়ার পরে জাপট তৈরি হয়েছিল।

U¬mc x

বেশ সহজ. এটি অনলাইন চেষ্টা করুন!

কিভাবে এটা কাজ করে

U¬mc x  // Implicit: U = input string
U¬      // Split U into chars.
  mc    // Map each item to its char code.
     x  // Sum.
        // Implicit: output last expression

কৌতূহলবশত, আপনি কেন ¬কোনও প্রকারের অবহেলার দায়িত্ব অর্পণ করলেন না ?
কনর ও'ব্রায়ান

@ কেওবিʀɪᴇɴ কারণ আমি খুব তাড়াহুড়ো করেছিলাম এবং আগেই পরিকল্পনা না করে কেবল প্রয়োজন হিসাবে এগুলি অর্পণ করেছি। আমার একটি সেট রয়েছে যা কোডের একটি লাইন পরিবর্তন করে আরও বোধ করতে প্রস্তুত বোধ করে তবে আমি এটি সম্পর্কে উদ্রেক করি কারণ এটি প্রায় প্রতিটি বিদ্যমান উত্তরকে বাতিল করে দেবে।
ইটিএইচ প্রোডাকশনস

এটি একটি সহজ ফিক্স। শিরোনামে শর্তসাপেক্ষ যুক্ত করুন (যেমন, url/interpreter.html#new=1); এটি ব্যতীত যে কোনও কিছুই পুরানো অক্ষর সেটটি ব্যবহার করে এবং এর সাথে যে কোনও কিছুই নতুন অক্ষর সেটটি ব্যবহার করে।
কনর ওব্রায়ান

@ CᴏɴᴏʀO'Bʀɪᴇɴ ধন্যবাদ, আমি এটি বিবেচনা করব।
ইটিএইচ প্রোডাকশনস

1

প্লাটিপাড় , 2 বাইট (প্রতিযোগী নয়)

us

এটি অনলাইন চেষ্টা করুন !

uইনপুট স্ট্রিংয়ে সমস্ত চারকোড মানগুলির একটি অ্যারে উত্পন্ন করে এবং sতাদের যোগফলটি সন্ধান করে।

নিজে চালানো হলে, এটি ফিরে আসে 232

এটি কনররের জল্ফ উত্তরের অনুরূপ , আমি স্ট্রিংটিকে চরিত্রের কোডগুলিতে (যা জল্ফের মধ্যে অন্তর্নিহিত) রূপান্তর করতে একটি বাইট ব্যবহার করি, তিনি ইনপুট পুনরুদ্ধার করতে একটি বাইট ব্যবহার করেন (যা প্লাটিপারে অন্তর্নিহিত)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.