電卓作る

0001デフォルトの名無しさん2010/11/15(月) 17:09:29
どうやって作るんだ

0002デフォルトの名無しさん2010/11/15(月) 17:22:13
バナナの数でも計算するの?

0003デフォルトの名無しさん2010/11/15(月) 17:26:14
a = Console.ReadLine();
b = Console.ReadLine();
a = a + b;
Console.WriteLine(a);

0004デフォルトの名無しさん2010/11/15(月) 17:28:25
電卓技術教科書に作り方が書いてあるらしい。

0005デフォルトの名無しさん2010/11/15(月) 17:30:41
string a;
string b;
int c;
int d;
a = Console.ReadLine();
b = Console.ReadLine();
c = Convert.ToInt32(a);
d = Convert.ToInt32(b);
c = c + d;
Console.WriteLine(c);

0006デフォルトの名無しさん2010/11/15(月) 17:31:38
作り方を書き込むまでageる

0007デフォルトの名無しさん2010/11/15(月) 17:47:25
10 INPUT A
20 INPUT B
30 PRINT A+B

0008デフォルトの名無しさん2010/11/15(月) 18:12:02
HPの関数電卓マジオススメ

0009デフォルトの名無しさん2010/11/15(月) 18:27:08
自分は大学のときからずっとCASIO。
ヒューレット・パッカードはタブレットPCでちょっと痛い目みたんで遠慮したい。

0010デフォルトの名無しさん2010/11/15(月) 18:57:40
昔はスタックの練習で RPN 電卓をよく作ったもんだ。

0011デフォルトの名無しさん2010/11/15(月) 19:12:42
string a;
string b;
int c;
int d;
while (a != end)
a = Console.ReadLine();
b = Console.ReadLine();
c = Convert.ToInt32(a);
d = Convert.ToInt32(b);
c = c + d;
Console.WriteLine(c);
}

0012デフォルトの名無しさん2010/11/15(月) 19:32:29
>>8
電卓だけど逆ポーランド入力のやつ?
[1][2][3] [store] [2][3] [+] とか入力するん

0013デフォルトの名無しさん2010/11/15(月) 19:32:51
√がある事が多いのは回路作りやすいからと聞いた

0014デフォルトの名無しさん2010/11/15(月) 19:43:50
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所

0015デフォルトの名無しさん2010/11/15(月) 19:44:17
今更電卓なんて作っても仕方がない。
入出力用の部品代だけで市販品より高くなると思う。

0016デフォルトの名無しさん2010/11/15(月) 20:03:45
string nyuuryoku;
int keisan;
string moji1;
string moji2;
int suuchi1;
int suuchi2;
int kekka;
nyuuryoku = Console.ReadLine();
keisan = nyuuryoku.IndexOf("+");
moi1 = nyuuryoku.Substring(0, keisan);
moji = nyuuryoku.Substring(0, keisan + 1);
suuchi1 = Convert.ToInt32(moji1);
suuchi2 = Convert.ToInt32(moji2);
kekka = suuchi1 = suuchi2;
Console.WriteLine(kekka);

0017デフォルトの名無しさん2010/11/15(月) 21:36:18
age

0018デフォルトの名無しさん2010/11/15(月) 22:00:17
そろばんでいいだろ

0019デフォルトの名無しさん2010/11/15(月) 22:06:49
作り方教えろ

殺す

0020デフォルトの名無しさん2010/11/15(月) 22:08:44
あげ

0021デフォルトの名無しさん2010/11/15(月) 22:14:33
>>18
そろばんだと部材が汎用じゃないからむしろハードルは高くなると思う。
市販品の価格も電卓より若干高め。

0022デフォルトの名無しさん2010/11/15(月) 22:49:01
>>1には石版に石っころで充分

0023デフォルトの名無しさん2010/11/15(月) 22:54:47
ここはプログラム板だ
ここで電卓と言えば電卓ソフトだろう

0024デフォルトの名無しさん2010/11/15(月) 22:57:26
>>1にはそろばんソフトで十分だといっている

0025デフォルトの名無しさん2010/11/15(月) 23:12:42
>>23
それは勝手な解釈というものだな。
電卓は電卓だろう。
プラスチックの厚板に押しボタンと液晶がついているアレだ。

0026デフォルトの名無しさん2010/11/15(月) 23:13:54
この間から殺人予告してまわってる馬鹿はお前か
規制の原因にもなるし迷惑だからやめろクズ
http://hibari.2ch.net/test/read.cgi/gamedev/1289639054/6

0027デフォルトの名無しさん2010/11/15(月) 23:29:52
>>8
ニワカなんで35s愛用してるわ

0028デフォルトの名無しさん2010/11/16(火) 00:06:49
string nyuuryoku;
int keisan1;
int keisan2;
string moji1;
string moji2;
int suuchi1;
int suuchi2;
int kekka;
nyuuryoku = Console.ReadLine();
while (keisan1 != -1){
keisan1 = nyuuryoku.IndexOf("+");
moji1 = nyuuryoku.Substring(keisan1, keisan2);
suuchi1 = Convert.ToInt32(moji1);
kekka = kekka + suuchi1;
keisan2 = keisan1;
}
Console.WriteLine(kekka);

どこが間違ってるか教えろ

0029デフォルトの名無しさん2010/11/16(火) 00:10:39
気持ち悪い

0030デフォルトの名無しさん2010/11/16(火) 00:16:56
string nyuuryoku;
int keisan1;
int keisan2;
int mojisuu;
string moji1;
int suuchi1;
int kekka;
nyuuryoku = Console.ReadLine();
while (keisan1 != -1){
keisan1 = nyuuryoku.IndexOf("+");
moji1 = nyuuryoku.Substring(keisan2, mojisuu);
suuchi1 = Convert.ToInt32(moji1);
kekka = kekka + suuchi1;
keisan2 = keisan1;
mojisuu = keisan1 - keisan2;
}
Console.WriteLine(kekka);

早くしろ

0031デフォルトの名無しさん2010/11/16(火) 00:24:12
でも今回の殺人予告は特定の名前が入ってなくてワロタw
前回個人名出して予告したから今ガクブルなんだろw
あれは逮捕は時間の問題w
ムショ内で作れやゴミがwww

0032デフォルトの名無しさん2010/11/16(火) 00:25:54
>>31を今日殺す

0033デフォルトの名無しさん2010/11/16(火) 01:18:50
ムショと言えば刑務作業でRuby使った開発をさせるとかいう話は結局ポシャったのか。

0034デフォルトの名無しさん2010/11/16(火) 01:23:30
そんな事もあったなwwwww

0035デフォルトの名無しさん2010/11/16(火) 03:22:10
system("calc.exe");

0036デフォルトの名無しさん2010/11/16(火) 03:36:41
そろばんの方が楽だぜ
珠の動きを実装するだけだからな

0037デフォルトの名無しさん2010/11/16(火) 07:57:35
電卓はdouble使っても桁数が足りないから
文字列を直接計算するものを自分で作らないとね

0038デフォルトの名無しさん2010/11/16(火) 08:17:52
あげ

0039デフォルトの名無しさん2010/11/16(火) 08:36:00
やっぱりRubyで作るべきだろ

0040デフォルトの名無しさん2010/11/16(火) 13:17:28
>>39
Rubyに限らずGUI練習の定番だわな

0041デフォルトの名無しさん2010/11/16(火) 13:45:31
あえて Ruby でやることに意味がある

0042デフォルトの名無しさん2010/11/16(火) 15:11:13
>>37
俺も昔そう思った

0043デフォルトの名無しさん2010/11/16(火) 15:31:29
<html>
<ruby>
<rb>電卓
<rp>(
<rt>でんたく
<rp>)
</ruby>
</html>

0044デフォルトの名無しさん2010/11/16(火) 16:40:43
age

0045デフォルトの名無しさん2010/11/16(火) 19:12:55

0046デフォルトの名無しさん2010/11/16(火) 19:36:53
>>41
なんで?

0047デフォルトの名無しさん2010/11/16(火) 20:21:40
>>37
doubleは15〜6桁の精度だから足りるんじゃね?

0048デフォルトの名無しさん2010/11/16(火) 20:46:10
電卓なら下に素晴らしいコードがある。

http://www.tuat.ac.jp/~tuatmcc/contents/monthly/200206/nuki.html

0049デフォルトの名無しさん2010/11/16(火) 21:20:33
age

0050デフォルトの名無しさん2010/11/16(火) 21:36:58

0051デフォルトの名無しさん2010/11/16(火) 21:40:46
100円電卓開けると黒いエポキシの下に
キー入力とディスプレイ出力と計算を
全部やってるICがあるんだよな。
マイコンで再現しようとしたが
ディスプレイの解析で諦めた。

0052デフォルトの名無しさん2010/11/16(火) 21:43:00
>>47
パソコンの浮動小数点は、どんなに多くの桁を持っていても 確実に桁落ちする。ISOに規定されている。

電卓は決して計算を間違えない、桁数に関係なく。

0053デフォルトの名無しさん2010/11/16(火) 21:45:06
マセマテカのデモンストレーション検索したら
今のところ誰も電卓作ってない
これは一番乗りのチャンスだぞ

0054デフォルトの名無しさん2010/11/16(火) 21:47:51
>>27
四則演算にバグがあるという伝説の電卓じゃねぇか

0055デフォルトの名無しさん2010/11/16(火) 21:58:38
forthってRPN電卓きれいに書ける?

0056デフォルトの名無しさん2010/11/16(火) 22:02:28
age

0057デフォルトの名無しさん2010/11/16(火) 22:06:58
age

0058デフォルトの名無しさん2010/11/16(火) 22:11:36

0059デフォルトの名無しさん2010/11/16(火) 22:18:42
クソスレageんな
ここは電卓すら作れないゴミクズが立てたスレだから
やたとageられると迷惑

0060デフォルトの名無しさん2010/11/17(水) 00:09:43
>>52
Calculator Forensics Results Sorted By Result
http://www.rskey.org/~mwsebastian/miscprj/results.htm

0061デフォルトの名無しさん2010/11/17(水) 04:32:56
ArcSin@ArcCos@ArcTan@Tan@Cos@Sin@9 // N[#, 1000] &

0.42477796076937971538793014983850865259150819812531746292483377692344\
9218858626995884104476026351203946444259539846919941281533828651746695\
1760782243854433523508523081058155633166789338688468647911458932864329\
2699780033838542694470136034949581360572743694570077038104583136297994\
4640180821780747423821173761019818946764524644562762888487762275146093\
1036777710800339915916464613995641524408558245348282991718110972787758\
5927655835214579783537931535564422338713988824870205565725817467368381\
4549035847389501020087321969929258064184839185674211572106539582831108\
3116176515288795302571540244554030082153960017043814357906824833573140\
2827336882752091153616440532270367486029043964875611315237683906777677\
0626059868336387065882592103254479440889324313929881556121634049999995\
1189341498531791951984482889557850733783660407249079275669247600340551\
0578579356451303000941351625865976259962514426185153300744191079476047\
1286266406193478688591647061362781255873345573341596513680419839005783\
6298335877276492605968

0062デフォルトの名無しさん2010/11/17(水) 07:53:59
>>52
初心者に嘘を教えるな

0063デフォルトの名無しさん2010/11/17(水) 08:24:58
作り方書け

0064デフォルトの名無しさん2010/11/17(水) 08:43:32
>>63
いままでどんなプログラム書いたことあんの?

0065デフォルトの名無しさん2010/11/17(水) 13:27:00
PureBasicなら簡単だぞ

0066デフォルトの名無しさん2010/11/17(水) 13:53:11
>>65
つくってみそ

0067デフォルトの名無しさん2010/11/17(水) 16:57:37
delphiでいいだろ
電卓作る為だけに生まれたような言語だ

0068デフォルトの名無しさん2010/11/17(水) 17:11:42
>>6
つくってみそ

0069デフォルトの名無しさん2010/11/17(水) 17:50:09

0070デフォルトの名無しさん2010/11/17(水) 17:51:12
    ▲▃   ▅▂▃▅       ▂▄▃▅▆▃
    █▀▲  ▆█▀█▀   ▀■▀▀ ▃▆▀
  ▅█▃█▀▅▀▅▃▉        ▀▆▀
    ▆▀▲   ▅▀▆▃        █
  ▅■▀▃▀▅▀▃▂ ▀█▆▅▃     █
  ▲▐▅ ▼ ▃ ▀▀         █
   ▀      ▀█▅       ▀▆▅█

0071デフォルトの名無しさん2010/11/17(水) 18:18:52

0072デフォルトの名無しさん2010/11/17(水) 18:32:58
2新数の関係で0.1を10回足しても1.0にならないとか有名だろ

0073デフォルトの名無しさん2010/11/17(水) 18:49:32
        ∧∧  ミ _ ドスッ
        (   ,,)┌─┴┴─┐
       /   つ.  終  了 │
     〜′ /´ └─┬┬─┘
      ∪ ∪      ││ _ε3
               ゛゛'゛'゛

0074デフォルトの名無しさん2010/11/17(水) 18:58:43
10進小数クラス作れば良いだろ

0075デフォルトの名無しさん2010/11/17(水) 19:23:49
電卓はBCD屋根

0076デフォルトの名無しさん2010/11/17(水) 21:00:21

0077デフォルトの名無しさん2010/11/18(木) 00:27:16
ついこの前C#ですごく簡単な電卓を作った
小数は切り捨てられるけど16進 2進にも対応して
and演算もできる
けど実用性がw

0078デフォルトの名無しさん2010/11/18(木) 00:54:20
ウィンドウス付属の電卓超えればいいんじゃね

0079デフォルトの名無しさん2010/11/18(木) 04:01:32
それはかなり難しいな。

0080デフォルトの名無しさん2010/11/18(木) 08:19:03

0081デフォルトの名無しさん2010/11/18(木) 16:08:52
関数電卓の差を見る定番はtan(355)

0082デフォルトの名無しさん2010/11/18(木) 20:27:34
ググったらtan(355/226)って出てきた

0083デフォルトの名無しさん2010/11/18(木) 20:31:27

0084デフォルトの名無しさん2010/11/18(木) 20:51:48

0085デフォルトの名無しさん2010/11/18(木) 21:12:39

0086デフォルトの名無しさん2010/11/18(木) 21:27:16

0087デフォルトの名無しさん2010/11/18(木) 21:35:34

0088デフォルトの名無しさん2010/11/18(木) 21:39:26
作り方が分からない
教えろ

0089デフォルトの名無しさん2010/11/18(木) 22:16:46

0090デフォルトの名無しさん2010/11/18(木) 22:21:10
ハートの出し方教えろ。

0091デフォルトの名無しさん2010/11/18(木) 22:51:43

0092デフォルトの名無しさん2010/11/18(木) 22:58:05
あげ

0093デフォルトの名無しさん2010/11/18(木) 23:13:54
あげても無駄だ。

0094デフォルトの名無しさん2010/11/19(金) 02:27:51
あげ方教えろ

0095デフォルトの名無しさん2010/11/19(金) 08:29:15

0096デフォルトの名無しさん2010/11/19(金) 09:28:39

0097デフォルトの名無しさん2010/11/19(金) 16:27:31
age

0098デフォルトの名無しさん2010/11/19(金) 17:33:53

0099デフォルトの名無しさん2010/11/19(金) 17:38:54
もう話題が尽きたな。

0100デフォルトの名無しさん2010/11/19(金) 17:58:22
ttp://members3.jcom.home.ne.jp/goldwingstory/calc2312.html

0101デフォルトの名無しさん2010/11/19(金) 18:25:49
ops2 = {{"+", Plus}, {"-", Subtract}, {"*", Times}, {"^", Power}, Mod};
ops1 = {Prime, Minus, Floor, Exp, Re, Im, Arg, Abs, Sin, Cos, Tan,
Conjugate, {"Rationalize", Rationalize[#, 0] &}, {"ToReal", N[#, 100] &},
{"isPrime", If[AtomQ@#, If[#, true, false], false] &@PrimeQ@# &},
{"toBinary", If[#2 == {}, #1, #0[10*#1 + First@#2, Rest@#2]] &[0, IntegerDigits[#, 2]] &},
{"1/x", 1/# &}, Log, {"Log10", Log[10, #] &}};
consts = Join[ToString /@ Range[0, 9], {" I ", " Pi ", " E "}];
s = {None, {0, 0}}; a := s[[1]]; b := s[[2]]; bb := ss[[2]]; op = ImageSize -> {130, 30}; true = 1; false = I;
ss := {#[[1]], PadLeft[#[[2]], Max[Length@#[[2]], 2]]} &@If[StringQ@a, {None, Append[b, ToExpression@a]}, s]
Column@{Flatten[{ Button[#, s = If[StringQ@a, {a <> #, b}, {#, b}], op] & /@ consts,
Button[#[[1]], s = {None, Append[bb[[;; -2]], #[[2]]@Last@bb]}, op] & /@ (If[ListQ@#, #, {ToString@#, #}] & /@ ops1),
Button[#[[1]], s = {None, Append[bb[[;; -3]], #[[2]] @@ bb[[-2 ;;]]]}, op] & /@ (If[ListQ@#, #, {ToString@#, #}] & /@ ops2),
Button["Enter", s = {None, If[StringQ@a, Append[b, ToExpression@a], Append[b, Last@b]]}, op],
Button["C", s = {None, Append[Most@b, 0]}, op], Button["AC", s = {None, {0, 0}}, op],
Button["x<>y", s = {None, Join[bb[[;; -3]], bb[[{-1, -2}]]]}, op]}, 1],Dynamic[Framed /@ ss[[2]]]}

0102デフォルトの七氏さん2010/11/19(金) 19:18:49
C言語で作ってやったからいい加減黙れ。
感謝しろよ?

---start---
#include <stdio.h>
int main(){
int input1;
int input2;
printf("最初の数字を入れ(ry\n");
scanf(%x,&input1);
printf("\nもひとつ数(ry\n\n");
scanf(%x,&input2);
int answer = input1 + input2;
printf("\n\n\n\n\nあんさー:");
printf("%d\n\a\a\a,answer);
}
---end---

sage

0103デフォルトの名無しさん2010/11/19(金) 20:49:05
>>102
二つの数字を足すソフトはもう作った

0104デフォルトの名無しさん2010/11/19(金) 21:02:37
>>103
コード晒せ

0105デフォルトの名無しさん2010/11/19(金) 21:02:54
>>1
四則演算程度の電卓ならVBとかC#使えばバカでも作れるだろ。

0106デフォルトの名無しさん2010/11/19(金) 21:55:52
たぶん1は高速なのを作りたいんじゃないの

0107デフォルトの名無しさん2010/11/19(金) 22:02:19

0108デフォルトの名無しさん2010/11/19(金) 22:05:31
enzansi=[+ - * /] -> GUI.makeTheseButtons(hurry())
output.LEDlikeDisplay <- do(fuckking.hurry())[input + enzansi + input]
rest(in(peace(the world)))

0109デフォルトの名無しさん2010/11/19(金) 22:08:50
30のコードはコンパイルできなかった

自分でメソッド作ったほうがいいのか

0110デフォルトの名無しさん2010/11/19(金) 22:11:56
change(reason=forSomeReason, Display.replace(LED -> 7 Seg Like)
whichIs <= 7(Segment) ... Bright.Red with Black background | make(hurry())
rest(in(peace(the world)))

0111デフォルトの名無しさん2010/11/19(金) 22:13:26
>>109
エラーメッセージは?

0112デフォルトの名無しさん2010/11/19(金) 22:19:16
>>111
prog.cs(15,8): error CS0165: Use of unassigned local variable `keisan1'
prog.cs(17,29): error CS0165: Use of unassigned local variable `keisan2'
prog.cs(17,38): error CS0165: Use of unassigned local variable `mojisuu'
prog.cs(19,9): error CS0165: Use of unassigned local variable `kekka'
prog.cs(23,19): error CS0165: Use of unassigned local variable `kekka'
Compilation failed: 5 error(s), 0 warnings

visual c#でもコンパイルエラーになる

0113デフォルトの名無しさん2010/11/19(金) 22:31:37
>>112
まずwhileの前にkeisan1に値を入れて一番上のエラーを潰したら?

0114デフォルトの名無しさん2010/11/19(金) 22:38:16
>>113
int型に全部入れたがエラー出る

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object
at Test.Main () [0x00000] in <filename unknown>:0


0115デフォルトの名無しさん2010/11/19(金) 22:40:45
>>114
コードは?

0116デフォルトの名無しさん2010/11/19(金) 22:41:42
using System;

public class Test
{
public static void Main()
{
string nyuuryoku;
int keisan1 = 0;
int keisan2 = 0;
int mojisuu = 0;
string moji1;
int suuchi1 = 0;
int kekka = 0;
nyuuryoku = Console.ReadLine();
while (keisan1 != -1){
keisan1 = nyuuryoku.IndexOf("+");
moji1 = nyuuryoku.Substring(keisan2, mojisuu);
suuchi1 = Convert.ToInt32(moji1);
kekka = kekka + suuchi1;
keisan2 = keisan1;
mojisuu = keisan1 - keisan2;
}
Console.WriteLine(kekka);


}
}

0117デフォルトの名無しさん2010/11/19(金) 22:46:08
>>116
C#はしらないんだけどstringにも何か入れてみたら?
あと実行時のエラーは色んなところをコメントアウトしたりprint文を入れて行ってすこしずつ調べる

0118デフォルトの名無しさん2010/11/19(金) 22:54:14
prog.cs(11,8): error CS0029: Cannot implicitly convert type `int' to `string'
Compilation failed: 1 error(s), 0 warnings

できない

0119デフォルトの名無しさん2010/11/19(金) 22:56:52
>>118
その英語を訳すと?

0120デフォルトの名無しさん2010/11/19(金) 22:58:52
>>119

intからstringに変換できないとか

文字を入れても駄目だった

0121デフォルトの名無しさん2010/11/19(金) 22:59:57
>>120
コードは?
あとsageで

0122デフォルトの名無しさん2010/11/19(金) 23:01:02
using System;

public class Test
{
public static void Main()
{
string nyuuryoku;
int keisan1 = 0;
int keisan2 = 0;
int mojisuu = 0;
string moji1 = 0;
int suuchi1 = 0;
int kekka = 0;
nyuuryoku = Console.ReadLine();
while (keisan1 != -1){
keisan1 = nyuuryoku.IndexOf("+");
moji1 = nyuuryoku.Substring(keisan2, mojisuu);
suuchi1 = Convert.ToInt32(moji1);
kekka = kekka + suuchi1;
keisan2 = keisan1;
mojisuu = keisan1 - keisan2;
}
Console.WriteLine(kekka);


}
}


0123デフォルトの名無しさん2010/11/19(金) 23:01:46
>>122
>文字を入れても駄目だった
とはどこの部分?

0124デフォルトの名無しさん2010/11/19(金) 23:02:49
>>123
string moji1 = 0;

string moji1 = a;
に変えた

0125デフォルトの名無しさん2010/11/19(金) 23:04:14
>>124
aは文字ではない。

0126デフォルトの名無しさん2010/11/19(金) 23:06:08
>>125
string moji1 = "a";
に変えたがエラーが出る
Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object
at Test.Main () [0x00000] in <filename unknown>:0


0127デフォルトの名無しさん2010/11/19(金) 23:12:16
Runtime errorは出ても問題ないのか

0128デフォルトの名無しさん2010/11/19(金) 23:13:07
>>126
もうすぐだ。
sageろっての。

実行時のエラーはコメントアウトしていって問題の場所を突き止める。


// い
// う
// え

がエラーなかったら



// う
// え

これも大丈夫なら




// え

と少しずつはずしていけば場所が分かる

0129デフォルトの名無しさん2010/11/19(金) 23:20:41
using System;

public class Test
{
public static void Main()
{
string nyuuryoku;
int keisan1 = 0;
int keisan2 = 0;
int mojisuu = 0;
string moji1 = "a";
int suuchi1 = 0;
int kekka = 0;
nyuuryoku = Console.ReadLine();
while (keisan1 != -1){
keisan1 = nyuuryoku.IndexOf("+");
//moji1 = nyuuryoku.Substring(keisan2, mojisuu);
//suuchi1 = Convert.ToInt32(moji1);
//kekka = kekka + suuchi1;
//keisan2 = keisan1;
//mojisuu = keisan1 - keisan2;
}
//Console.WriteLine(kekka);


}
ここでエラーになった

0130デフォルトの名無しさん2010/11/19(金) 23:27:07
>>129
その悪い行をコメントアウトして
かわりにその時点でnyuuryokuに何が入っているか表示させてみたら?

0131デフォルトの名無しさん2010/11/19(金) 23:32:23
>>130
エラーの原因は↓だった
while (keisan1 != -1){


0132デフォルトの名無しさん2010/11/19(金) 23:36:10
>>131
解決した?

0133デフォルトの名無しさん2010/11/19(金) 23:37:50
>>132
whileは負の数を使えないのか

0134デフォルトの名無しさん2010/11/19(金) 23:40:49
>>133

// while (keisan1 != -1){
keisan1 = nyuuryoku.IndexOf("+");
//
//
// }

こうコメントアウトするとどうなる?

0135デフォルトの名無しさん2010/11/19(金) 23:44:05
>>124
同じエラーが出た

0136デフォルトの名無しさん2010/11/19(金) 23:45:19
>>135
じゃ keisan1 = nyuuryoku.IndexOf("+"); が悪い行だよな。
これもコメントアウトしてnyuuryokuになにが入ってるか見たら?

0137デフォルトの名無しさん2010/11/19(金) 23:45:29
安価ミス
>>134

0138デフォルトの名無しさん2010/11/19(金) 23:56:08
この前perlで数百ケタ同士の掛け算ができるスクリプト作ったら
計算終わるまでに20分とかかかってワロタww
そのあとBigIntあるとか知ってさらにワロタwww

0139デフォルトの名無しさん2010/11/19(金) 23:58:31
using System;

public class Test
{
public static void Main()
{
int a;
int b;
if (a = -1){
b = 1;
}
while (b != 1){
Console.WriteLine("a");
}
}
}
これでもできなかったから負の数を使わないメソッドを自分で作ればいいのか

0140デフォルトの名無しさん2010/11/20(土) 00:01:38
>>139
それがだめなのは>>112だからだろ
そんなことより>>136の結果は?

0141デフォルトの名無しさん2010/11/20(土) 00:07:01
>>140
ideoneというサイトだと実行できない
いまコンパイラをインストールしてる

0142デフォルトの名無しさん2010/11/20(土) 00:08:13
>>136
は前にやったが入力した文字が表示された

0143デフォルトの名無しさん2010/11/20(土) 00:08:17
>>141
おk

0144デフォルトの名無しさん2010/11/20(土) 00:14:26
>>139
今回のに関係ないが
if (a = -1){
じゃなくて
if (a == -1){

0145デフォルトの名無しさん2010/11/20(土) 00:25:33
入力した文字が表示された

ここは問題ないのか

0146デフォルトの名無しさん2010/11/20(土) 00:29:17
コメントをなくして実行すると
入力文字列の形式が正しくありません。
と表示される

0147デフォルトの名無しさん2010/11/20(土) 00:29:20
>>145
なにも入力しないとどうなる?

0148デフォルトの名無しさん2010/11/20(土) 00:31:07
>>147
同じエラーが出る
suuchi1 = Convert.ToInt32(moji1);
が問題のようだ

0149デフォルトの名無しさん2010/11/20(土) 00:34:43
変数
args {string[0]} string[]
nyuuryoku "1+1" string
keisan1 1 int
keisan2 0 int
mojisuu 0 int
moji1 "" string
suuchi1 0 int
kekka 0 int

0150デフォルトの名無しさん2010/11/20(土) 00:37:36
>>148
>同じエラーが出る
って事はIdeone上では何も入力しない状態だったってことだ。
(「null readline」 で検索)

あとはがんばれ
明日早いんで寝る

0151デフォルトの名無しさん2010/11/20(土) 02:01:28
>>101

何コレ?

何の言語かさえ分からん。

0152デフォルトの名無しさん2010/11/20(土) 02:36:04
電卓なんてそこいらのプログラミングの本にサンプル載ってるだろ
馬鹿だ。関数電卓ですら簡単に作れるのに
難しいのは()を使った構文解析とかだ

0153デフォルトの名無しさん2010/11/21(日) 04:13:10
ttp://ideone.com/G3ul5
Luaで適当に書いてみたけど途中で飽きた。誰か完成させて。

0154デフォルトの名無しさん2010/11/22(月) 10:16:51
精度はあんまりよくないけど、昔ネトゲ用に自作電卓を作った
JavaScriptで、現在入力してる数値が見れるのが売りで、割り算後の小数点切捨てと小数点ありの結果も同時にだしている

0155デフォルトの名無しさん2010/11/22(月) 16:20:24
>>154
うp!うp!

0156デフォルトの名無しさん2010/11/22(月) 21:20:16
素人なんでいろいろ辺だと思うがそこは勘弁な
長いといわれたので少し省略 ボタンの部分も省略

function calc(ch)
{
if(ch == "=")
{
document.form1.text2.value = Math.floor(eval(document.form1.text1.value));
document.form1.text3.value = eval(document.form1.text1.value).toFixed(3);
} else if (ch == "C")
{
document.form1.text1.value = "";
document.form1.text2.value = "";
} else
{
document.form1.text1.value += ch;
}
}
</SCRIPT>
</HEAD>
<BODY BGCOLOR = "#FFFFFF" TEXT = "#000000">
<TR><FONT color="#FF0000"><H1>JavaScript電卓</H1></FONT></TR>
<FONT color="#87CEFA">
<FORM NAME = "form1" ACTION ="#">
計算
<INPUT type="text" name="text1" value="" size="120"><BR><BR>
答え(小数点切捨て)
<INPUT type="text" size="26" name="text2" value=""><BR><BR>
答え(小数点有り)
<INPUT type="text" size="26" name="text3" value=""><BR><BR>
</FONT>

0157デフォルトの名無しさん2010/11/23(火) 22:31:37
演算はどうでもいいので2〜36進変換したいです

0158デフォルトの名無しさん2010/11/23(火) 22:38:34
やり方知らんのか?

0159デフォルトの名無しさん2010/11/23(火) 22:46:35
浮動小数点の10進数以外の表示はライブラリがそろってないからそれなりに難しいな。

0160デフォルトの名無しさん2010/11/23(火) 23:29:26
>>158
書いてみてください

0161デフォルトの名無しさん2010/11/23(火) 23:47:41
手計算してみ、小学校で習う、出来るだろ

0162デフォルトの名無しさん2010/11/23(火) 23:52:00
なんだ結局煽るだけか。

0163デフォルトの名無しさん2010/11/23(火) 23:54:03
浮動小数点なのか整数(または固定小数点)なのかはっきりしる。

0164デフォルトの名無しさん2010/11/24(水) 00:11:12
>>163
おまかせします

01651582010/11/24(水) 12:55:14
>>160
最適化など何も考えず素直に Haskell で実装した
cnTrans 関数が x 進数から y 進数へ変換する

------------
data Number = Number Integer [Integer]
              deriving Show

cnTrans :: Integer -> Number -> Number
cnTrans c = fromDec c . toDec

toDec :: Number -> Integer
toDec (Number c ns) = sum $ zipWith (*) ns $ iterate (*c) 1

fromDec :: Integer -> Integer -> Number
fromDec c 0 = Number c [0]
fromDec c n = Number c (unfoldr f n)
  where f d = if d == 0 then Nothing else Just $ swap (d `quotRem` c)
        swap (a,b) = (b, a)
------------

0166デフォルトの名無しさん2010/11/24(水) 18:58:47
10進数の1234を、16進数にする場合

1234 / 16 の余りを得る → 2 一桁目は2になる。

1234から一桁目の2を引く → 1232


1232を、16で割る → 77
77 / 16の余りを得る → 13 二桁目は13になる。(16進数だと、10がA、11がB、12がCだから、13はDになる)

77から二桁目の13を引く → 64


64を、16で割る → 4
4 / 16の余りを得る → 4 三桁目は4になる。

4から三桁目の4を引く → 0


0になったら終了。

得られた各桁を並べて書くと
4 13 2
各桁を16進数の記号に書き換えて
4D2
これが答え。

01671662010/11/24(水) 19:04:02
#include <stdio.h>

// x を base進数で、画面にプリントする
void aaa(int x, int base)
{
int a[1000];

int* p = a;
while (x != 0) {
*p = x % base;
x = (x - *p++) / base;
}

const char t[]="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
while (p!=a) {
printf("%c",t[*--p]);
}
}

void main()
{
while(1){
int a, b;

printf("\n");
scanf("%d",&a);
scanf("%d",&b);

aaa(a,b);
}
}

0168デフォルトの名無しさん2010/11/25(木) 01:14:21
特殊用途計算尺作成ツールなんかどうよ?
汎用の計算尺シミュレーターは沢山あるが
http://homepages.slingshot.co.nz/~timb3000/intro/intro_screenshots.html
こういった特殊用途の計算尺のシミュレータをつくるツールがあったら楽しいんじゃないか。
http://www.sliderules.info/collection/coll-specialised.htm

たとえば日没時刻計算の計算尺をつくってプラネタリウムソフトにくっつけるとかそんなの

0169デフォルトの名無しさん2010/11/25(木) 22:04:49
全く使わないがこういうサイトもある

http://keisan.casio.jp/

0170デフォルトの名無しさん2010/11/25(木) 22:44:40
知らんかった。ここ、便利だな。

0171デフォルトの名無しさん2010/11/26(金) 00:28:55
1は>>149を最後に居なくなったのか

0172デフォルトの名無しさん2010/11/26(金) 12:34:15
スレタイが

電車作る


に見えたぞ

A列車でいこう

とか

オープンワールド系RPGの世界に列車を走らせるのを想像したぞ

0173デフォルトの名無しさん2010/11/26(金) 16:18:15
ゼロヨンじゃねえんだし
敷かれたレールの上をスケジュール通りに走って何が楽しいのか

0174デフォルトの名無しさん2010/11/26(金) 16:36:04
様々な要因で遅れうる運行を、スケジュール通りに動くよう設計するのが楽しいんじゃないか。
完成されたシステムは、整然と動き続ける列車は、効率よく、美しい。
プログラミングに通じるものが、そこにはある。

0175デフォルトの名無しさん2010/11/26(金) 19:17:54
>>174
プログラミングの前に、真っ先にグラフ理論が思い浮かんだ

0176デフォルトの名無しさん2010/11/27(土) 00:05:59
組合せ最適化→Prolog

0177デフォルトの名無しさん2010/11/27(土) 02:28:17
MATLAB

0178デフォルトの名無しさん2010/11/27(土) 16:48:20
> 82
pi/2の近似値ですね。ちなみにPCですると、
-7497258.17914
となったが、どうひょうかはするのか?

0179デフォルトの名無しさん2010/11/27(土) 23:17:54
安価もちゃんとつけれないとか、専ブラ使えよ・・・

0180デフォルトの名無しさん2010/11/27(土) 23:31:52
>>178
日本語でOK

0181デフォルトの名無しさん2010/12/02(木) 22:03:26
>>37
JavaのBigDecimal,BigIntegerがあれば十分。

というか>>1がいまさら電卓作ってもな。

Excelを超える表計算ソフトやMATLABを超える行列演算ソフトを
作らないとまったく役に立たないと思うのだが


卒論や修論で電卓を作るとか言ってる奴が過去に研究室にいたがあれはひどかった。
教授も内心馬鹿にしてたし。新規性があれば作ってもいいという考えだから
教授はほとんどツッコミをいれなかったがね。

0182デフォルトの名無しさん2010/12/02(木) 22:33:04
きっと、その人はまともな研究テーマがちゃんとあって、そのための基礎データを集めたりとか何かするのに電卓アプリが必要だったんだよ、たぶん。
こう、ユーザーインタフェースに関する実験で、どのボタンが一番頻繁に押されるのか、とか、どのボタンが一番押し間違われやすいか、とか。
知らんけど。

0183デフォルトの名無しさん2010/12/02(木) 23:21:28
電話の数字は
123
456
789
 0
なのに
テンキーとか電卓は
789
456
123

なのはなぜ?

0184デフォルトの名無しさん2010/12/02(木) 23:25:22
そんなの「電話 電卓 配列」でググればいいだろ
バカなのか?

それとも何か、ム板らしい面白い返しでも欲しいのか?

0185デフォルトの名無しさん2010/12/03(金) 02:26:25
>>181
>>112-149を読むと1は役に立つのを作ろうとしたというより、
単にプログラミングを始めたばっかりで、
何かに載ってた例題に躓いたという感じだが。

>>1
これでは学習の効率悪すぎる。
まずは薄いC#の入門書を一冊やることをオススメする

0186デフォルトの名無しさん2010/12/05(日) 13:25:47
ビジュアルプログラミング言語SCRATCHで書かれた電卓色々
http://scratch.mit.edu/tags/view/calculator/loveits
ソースは開発環境入れないと見れない
http://info.scratch.mit.edu/Scratch_1.4_Download

0187デフォルトの名無しさん2010/12/08(水) 00:46:10
C# でも Decimal 型があるのに

0188デフォルトの名無しさん2010/12/08(水) 01:18:35
>>178
tan(355/226) = -7497258.185325587112905071831891248663.....
だから小数第一位までしか合ってない。

tan(52174/33215) だと整数部分まで合わないんじゃないか?

0189デフォルトの名無しさん2011/05/14(土) 08:15:35.84
>>1ではないが電卓作ってる。
(BCD自前で作ったので)計算結果が正しいかどうかわかんないという
とても怖い電卓になってる

冪と根作るのがめんどくせぇ…

0190デフォルトの名無しさん2011/07/09(土) 11:03:40.46
電卓の作成はプログラミングの基礎力アップに丁度良い課題だよね

0191デフォルトの名無しさん2011/07/10(日) 01:54:19.81
RPN電卓だ〜いすき!

0192デフォルトの名無しさん2011/07/10(日) 03:39:15.02
電卓なんて、evalですぐできるじゃん

0193デフォルトの名無しさん2011/07/10(日) 03:43:27.10
最初は eval でも良いよ

0194デフォルトの名無しさん2011/07/10(日) 04:50:29.45
まあそうevalなよ

0195デフォルトの名無しさん2011/10/31(月) 11:09:43.80
何でもREPLに結びつける思考を始めると何も作らなくなる
そのうち使わない魔法が真の魔法だとか言い出すようになる

0196デフォルトの名無しさん2012/01/12(木) 17:53:39.30
バグの炙り出しを工夫しよう

0197デフォルトの名無しさん2012/06/13(水) 19:19:52.42

0198デフォルトの名無しさん2012/06/13(水) 19:24:06.16
なぜひょうたん

0199デフォルトの名無しさん2012/06/25(月) 11:42:28.34
。。。

0200デフォルトの名無しさん2012/06/26(火) 18:25:14.44
あげ

0201デフォルトの名無しさん2012/06/27(水) 10:42:15.93
>>151
mathematicaだと思う

0202デフォルトの名無しさん2012/06/27(水) 14:01:41.07
>>173
そういいつつhelloworldやるんだろ?

0203デフォルトの名無しさん2012/06/27(水) 14:14:41.56
計算尺と電卓のハイブリットで高性能なのがなかなか無い
http://itunes.apple.com/jp/app/dejiana-dian-zhuo/id427451522?mt=8
これの関数電卓版とかRPN版とか

0204デフォルトの名無しさん2012/06/30(土) 10:17:10.12
delphiで普通の電卓つくりたいんですが、= の部分がよくわかりません。どなたか教えてください。

0205デフォルトの名無しさん2012/06/30(土) 11:18:00.15
>>204
それ以外は判るのか? なら頑張れ。

普通は、=キーを押したときに何をすべきか考えてから他を作るもんだがな。

0206デフォルトの名無しさん2012/06/30(土) 14:15:03.55
定数を繰り返し演算するってこと?

0207デフォルトの名無しさん2012/06/30(土) 19:03:09.47
電卓作るスキルがあれば、オリジナル言語のインタープリターも作れる。

0208デフォルトの名無しさん2012/06/30(土) 19:18:31.02
オートマトンの勉強になるね。
で、一番の問題はCASIO系電卓とSHARP系電卓の操作性の違いという…。

0209デフォルトの名無しさん2012/06/30(土) 19:43:35.49
電卓の規格統一すんのか?
嫌だろ

0210デフォルトの名無しさん2012/06/30(土) 23:10:37.92
有効桁なんて3桁ありゃ十分

0211デフォルトの名無しさん2012/07/01(日) 00:02:30.85
>>210
あんたは千円札も使ったことがないのか?

0212デフォルトの名無しさん2012/07/01(日) 00:06:39.77
察してやれ

0213デフォルトの名無しさん2012/07/01(日) 00:15:07.63
法外に桁居るのは金勘定だよな
自然科学じゃありえん

0214デフォルトの名無しさん2012/07/01(日) 00:27:51.37
4桁は欲しい

0215デフォルトの名無しさん2012/07/01(日) 00:57:10.73
1桁も要らん。オーダーさえ分かればおk

0216デフォルトの名無しさん2012/07/01(日) 01:31:43.51
小さい事務所でも8桁電卓じゃ足りないが、俺のおこずかい計算だと
1円単位はわりとどうでもよく、1万以上は滅多に無い
と言うわけで3桁電卓で足りる

0217デフォルトの名無しさん2012/07/09(月) 18:32:14.49
3桁なら計算尺で賄える桁だな。
ソロバンもいいが計算尺は小中学校でやらせてもいいんじゃないかな。
最近はやりの地頭力ってやつにもなるだろうし

0218デフォルトの名無しさん2012/07/09(月) 20:48:39.07
現実的に物理/工学的な問題に対処する場合, 必ず確度が問題になるのに
電卓使い慣れると確度のこと忘れる奴がたくさんいるから, 計算尺ってのは
必要だと思うよ


0219デフォルトの名無しさん2012/07/09(月) 21:47:12.81
>>215
宇宙関係だとそうゆうケースも沢山ありそね

0220デフォルトの名無しさん2012/08/13(月) 08:42:52.00
計算尺?不要だよ。あんなもんありがたがってるのは老害だけ。
Addiatorと同じで消えて当然。

0221デフォルトの名無しさん2012/08/15(水) 22:13:00.32
>>220
あくまで授業の数時間ならいいじゃん。
つか計算尺現役世代に聞いても皆使い方忘れていたな。
プログラミンなる劣化Scratch教えるよりはマシだろう。

0222デフォルトの名無しさん2012/11/01(木) 07:34:42.91
だろうね

0223デフォルトの名無しさん2012/11/01(木) 21:46:08.72
log2(3) * log2(5) = log2(8)

0224デフォルトの名無しさん2013/09/08(日) 16:19:04.39
BCDでn乗根(nは実数)求める方法探し中…

0225デフォルトの名無しさん2013/10/22(火) 00:05:11.75
保守しておこう。一応作って一応動いてる。

0226デフォルトの名無しさん2013/12/31(火) 21:29:00.06
がんばれ電卓

0227デフォルトの名無しさん2014/01/05(日) 10:06:15.18
まずボタンと液晶を用意します

0228デフォルトの名無しさん2014/01/05(日) 21:01:04.17
電子工作かよ

0229 忍法帖【Lv=39,xxxPT】(1+0:5) 2014/01/09(木) 00:18:46.81
ts

0230デフォルトの名無しさん2014/01/19(日) 17:43:02.64
ts

0231デフォルトの名無しさん2014/01/31(金) 19:00:29.34
※※※テナント募集中※※※

イベント企画のできる方、集まれーーー

一緒にこのスレッドを盛り上げましょう

株式会社 ★◆▲▲

0232デフォルトの名無しさん2014/01/31(金) 20:14:50.00
十進BASIC だと桁落ちしない。

0233デフォルトの名無しさん2014/01/31(金) 20:24:34.66

0234デフォルトの名無しさん2014/01/31(金) 20:25:15.94
「分数計算機能、統計計算機能つきの関数電卓」

「1976年にはfx-19が発売された。価格は9,800円。(大卒初任給:9万4300円 )
これなら学生でも買うことができる。そしてこの電卓の目玉は
世界初の分数計算機能、統計計算機能つきの関数電卓」

70年代の関数電卓:CASIO fx-10 (1974)、fx-15 (1975)、fx-19 (1976) - とね日記
ttp://blog.goo.ne.jp/ktonegaw/e/e27a518854a8b71b3eb83b6d38ab598c

0235デフォルトの名無しさん2014/02/01(土) 07:41:39.04
電卓のオートマトンかくの そうよ かくのよ

0236片山博文MZ無能 ◆T6xkBnTXz7B0 2014/02/01(土) 12:48:14.21
まず、Bison+Flexの基本を勉強しましょう。
http://katahiromz.web.fc2.com/mathai/compiler-tech-ja.zip

0237デフォルトの名無しさん2014/02/01(土) 16:48:12.74
電卓プログラムを例題に出してくる参考書ってありそうでないだろ

0238片山博文MZ無能 ◆T6xkBnTXz7B0 2014/02/02(日) 13:34:18.32
「週間電卓を作る」創刊。

「週間電卓を作る2月2日号」
http://katahiromz.web.fc2.com/mathai/mzcalc1.zip
変数と三角関数が使えます。

0239片山博文MZ無能 ◆T6xkBnTXz7B0 2014/02/09(日) 15:57:35.18
「週間電卓を作る2月9日号」
http://katahiromz.web.fc2.com/mathai/mzcalc2.zip

Boost.Spiritを使ってみました。
関数が使えるが、変数への代入ができない。

0240デフォルトの名無しさん2014/02/10(月) 14:18:19.00
1 239 -

0241片山博文MZ無能 ◆T6xkBnTXz7B0 2014/02/10(月) 21:45:21.11
ご要望を受け付けてます。どんな電卓を作りたいかを伝達下さい。

例)多倍長演算で無限桁数サポート。GUIを付ける。ユーザ関数機能。数式処理。

0242片山博文MZ無能 ◆T6xkBnTXz7B0 2014/02/10(月) 22:10:49.29
分数計算、型システムも考えとくか

0243デフォルトの名無しさん2014/02/11(火) 22:13:32.44
いきなり伸びててびっくりした

0244片山博文MZ無能 ◆T6xkBnTXz7B0 2014/02/16(日) 10:41:12.28
「週間電卓を作る2月16日号」
http://katahiromz.web.fc2.com/mathai/mzcalc3.zip

ANTLR3とBoost.multiprecisionを使ってみました。
C言語風の式が入力できます。多倍長演算で桁数の大きい数も計算できます。

ANTLR3については、こちらを参考にして下さい。
http://cx5software.com/article_antlr/

ANTLR3のC言語用のランタイムはこちらからダウンロードできます。
http://katahiromz.web.fc2.com/mathai/antlr3c-antlr-3.5-mingw32.zip
http://katahiromz.web.fc2.com/mathai/antlr3c-antlr-3.5-mingw64.zip
http://katahiromz.web.fc2.com/mathai/antlr3c-antlr-3.5-vc9-win32.zip
http://katahiromz.web.fc2.com/mathai/antlr3c-antlr-3.5-vc9-x64.zip

0245片山博文MZ無能 ◆T6xkBnTXz7B0 2014/02/16(日) 10:53:57.12
Type [q or Q] to quit
> 871263948761872364871623946182973164+8761928734912634183412379461874234
Result is: 880025877496784999055036325644847398
> s=92183019827349179203471
s := 92183019827349179203471
Result is: 92183019827349179203471
> sin(s)%100.3
Result is: 0.7484296692622107891527456053804399259219719456829430374497200718368
9079690554390091960884209113407122218168687650754654152155867
>

0246片山博文MZ無能 ◆T6xkBnTXz7B0 2014/02/16(日) 13:46:20.52
「週間電卓を作る」は廃刊しました。読者の皆さん、ありがとうございました。

0247デフォルトの名無しさん2014/02/16(日) 14:23:33.29
おさるがココナッツ投げる電卓がほしいです

0248デフォルトの名無しさん2014/02/16(日) 17:31:15.48
なにそれ、俺も欲しい!

0249デフォルトの名無しさん2014/05/01(木) 02:23:55.69 ID:ffO9/8oK

新着レスの表示
レスを投稿する