電卓作る

1デフォルトの名無しさん
どうやって作るんだ
2デフォルトの名無しさん:2010/11/15(月) 17:22:13
バナナの数でも計算するの?
3デフォルトの名無しさん:2010/11/15(月) 17:26:14
a = Console.ReadLine();
b = Console.ReadLine();
a = a + b;
Console.WriteLine(a);
4デフォルトの名無しさん:2010/11/15(月) 17:28:25
電卓技術教科書に作り方が書いてあるらしい。
5デフォルトの名無しさん: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);
6デフォルトの名無しさん:2010/11/15(月) 17:31:38
作り方を書き込むまでageる
7デフォルトの名無しさん:2010/11/15(月) 17:47:25
10 INPUT A
20 INPUT B
30 PRINT A+B
8デフォルトの名無しさん:2010/11/15(月) 18:12:02
HPの関数電卓マジオススメ
9デフォルトの名無しさん:2010/11/15(月) 18:27:08
自分は大学のときからずっとCASIO。
ヒューレット・パッカードはタブレットPCでちょっと痛い目みたんで遠慮したい。
10デフォルトの名無しさん:2010/11/15(月) 18:57:40
昔はスタックの練習で RPN 電卓をよく作ったもんだ。
11デフォルトの名無しさん: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);
}
12デフォルトの名無しさん:2010/11/15(月) 19:32:29
>>8
電卓だけど逆ポーランド入力のやつ?
[1][2][3] [store] [2][3] [+] とか入力するん
13デフォルトの名無しさん:2010/11/15(月) 19:32:51
√がある事が多いのは回路作りやすいからと聞いた
14デフォルトの名無しさん:2010/11/15(月) 19:43:50
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

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

                  京都大学霊長類研究所
15デフォルトの名無しさん:2010/11/15(月) 19:44:17
今更電卓なんて作っても仕方がない。
入出力用の部品代だけで市販品より高くなると思う。
16デフォルトの名無しさん: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);
17デフォルトの名無しさん:2010/11/15(月) 21:36:18
age
18デフォルトの名無しさん:2010/11/15(月) 22:00:17
そろばんでいいだろ
19デフォルトの名無しさん:2010/11/15(月) 22:06:49
作り方教えろ

殺す
20デフォルトの名無しさん:2010/11/15(月) 22:08:44
あげ
21デフォルトの名無しさん:2010/11/15(月) 22:14:33
>>18
そろばんだと部材が汎用じゃないからむしろハードルは高くなると思う。
市販品の価格も電卓より若干高め。
22デフォルトの名無しさん:2010/11/15(月) 22:49:01
>>1には石版に石っころで充分
23デフォルトの名無しさん:2010/11/15(月) 22:54:47
ここはプログラム板だ
ここで電卓と言えば電卓ソフトだろう
24デフォルトの名無しさん:2010/11/15(月) 22:57:26
>>1にはそろばんソフトで十分だといっている
25デフォルトの名無しさん:2010/11/15(月) 23:12:42
>>23
それは勝手な解釈というものだな。
電卓は電卓だろう。
プラスチックの厚板に押しボタンと液晶がついているアレだ。
26デフォルトの名無しさん:2010/11/15(月) 23:13:54
この間から殺人予告してまわってる馬鹿はお前か
規制の原因にもなるし迷惑だからやめろクズ
http://hibari.2ch.net/test/read.cgi/gamedev/1289639054/6
27デフォルトの名無しさん:2010/11/15(月) 23:29:52
>>8
ニワカなんで35s愛用してるわ
28デフォルトの名無しさん: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);

どこが間違ってるか教えろ
29デフォルトの名無しさん:2010/11/16(火) 00:10:39
気持ち悪い
30デフォルトの名無しさん: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);

早くしろ
31デフォルトの名無しさん:2010/11/16(火) 00:24:12
でも今回の殺人予告は特定の名前が入ってなくてワロタw
前回個人名出して予告したから今ガクブルなんだろw
あれは逮捕は時間の問題w
ムショ内で作れやゴミがwww
32デフォルトの名無しさん:2010/11/16(火) 00:25:54
>>31を今日殺す
33デフォルトの名無しさん:2010/11/16(火) 01:18:50
ムショと言えば刑務作業でRuby使った開発をさせるとかいう話は結局ポシャったのか。
34デフォルトの名無しさん:2010/11/16(火) 01:23:30
そんな事もあったなwwwww
35デフォルトの名無しさん:2010/11/16(火) 03:22:10
system("calc.exe");
36デフォルトの名無しさん:2010/11/16(火) 03:36:41
そろばんの方が楽だぜ
珠の動きを実装するだけだからな
37デフォルトの名無しさん:2010/11/16(火) 07:57:35
電卓はdouble使っても桁数が足りないから
文字列を直接計算するものを自分で作らないとね
38デフォルトの名無しさん:2010/11/16(火) 08:17:52
あげ
39デフォルトの名無しさん:2010/11/16(火) 08:36:00
やっぱりRubyで作るべきだろ
40デフォルトの名無しさん:2010/11/16(火) 13:17:28
>>39
Rubyに限らずGUI練習の定番だわな
41デフォルトの名無しさん:2010/11/16(火) 13:45:31
あえて Ruby でやることに意味がある
42デフォルトの名無しさん:2010/11/16(火) 15:11:13
>>37
俺も昔そう思った
43デフォルトの名無しさん:2010/11/16(火) 15:31:29
<html>
<ruby>
<rb>電卓
<rp>(
<rt>でんたく
<rp>)
</ruby>
</html>
44デフォルトの名無しさん:2010/11/16(火) 16:40:43
age
45デフォルトの名無しさん:2010/11/16(火) 19:12:55
46デフォルトの名無しさん:2010/11/16(火) 19:36:53
>>41
なんで?
47デフォルトの名無しさん:2010/11/16(火) 20:21:40
>>37
doubleは15~6桁の精度だから足りるんじゃね?
48デフォルトの名無しさん:2010/11/16(火) 20:46:10
電卓なら下に素晴らしいコードがある。

http://www.tuat.ac.jp/~tuatmcc/contents/monthly/200206/nuki.html
49デフォルトの名無しさん:2010/11/16(火) 21:20:33
age
50デフォルトの名無しさん:2010/11/16(火) 21:36:58
51デフォルトの名無しさん:2010/11/16(火) 21:40:46
100円電卓開けると黒いエポキシの下に
キー入力とディスプレイ出力と計算を
全部やってるICがあるんだよな。
マイコンで再現しようとしたが
ディスプレイの解析で諦めた。
52デフォルトの名無しさん:2010/11/16(火) 21:43:00
>>47
パソコンの浮動小数点は、どんなに多くの桁を持っていても 確実に桁落ちする。ISOに規定されている。

電卓は決して計算を間違えない、桁数に関係なく。
53デフォルトの名無しさん:2010/11/16(火) 21:45:06
マセマテカのデモンストレーション検索したら
今のところ誰も電卓作ってない
これは一番乗りのチャンスだぞ
54デフォルトの名無しさん:2010/11/16(火) 21:47:51
>>27
四則演算にバグがあるという伝説の電卓じゃねぇか
55デフォルトの名無しさん:2010/11/16(火) 21:58:38
forthってRPN電卓きれいに書ける?
56デフォルトの名無しさん:2010/11/16(火) 22:02:28
age
57デフォルトの名無しさん:2010/11/16(火) 22:06:58
age
58デフォルトの名無しさん:2010/11/16(火) 22:11:36
59デフォルトの名無しさん:2010/11/16(火) 22:18:42
クソスレageんな
ここは電卓すら作れないゴミクズが立てたスレだから
やたとageられると迷惑
60デフォルトの名無しさん:2010/11/17(水) 00:09:43
>>52
Calculator Forensics Results Sorted By Result
http://www.rskey.org/~mwsebastian/miscprj/results.htm
61デフォルトの名無しさん: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
62デフォルトの名無しさん:2010/11/17(水) 07:53:59
>>52
初心者に嘘を教えるな
63デフォルトの名無しさん:2010/11/17(水) 08:24:58
作り方書け
64デフォルトの名無しさん:2010/11/17(水) 08:43:32
>>63
いままでどんなプログラム書いたことあんの?
65デフォルトの名無しさん:2010/11/17(水) 13:27:00
PureBasicなら簡単だぞ
66デフォルトの名無しさん:2010/11/17(水) 13:53:11
>>65
つくってみそ
67デフォルトの名無しさん:2010/11/17(水) 16:57:37
delphiでいいだろ
電卓作る為だけに生まれたような言語だ
68デフォルトの名無しさん:2010/11/17(水) 17:11:42
>>6
つくってみそ
69デフォルトの名無しさん:2010/11/17(水) 17:50:09
70デフォルトの名無しさん:2010/11/17(水) 17:51:12
    ▲▃   ▅▂▃▅       ▂▄▃▅▆▃
    █▀▲  ▆█▀█▀   ▀■▀▀ ▃▆▀
  ▅█▃█▀▅▀▅▃▉        ▀▆▀
    ▆▀▲   ▅▀▆▃        █
  ▅■▀▃▀▅▀▃▂ ▀█▆▅▃     █
  ▲▐▅ ▼ ▃ ▀▀         █
   ▀      ▀█▅       ▀▆▅█
71デフォルトの名無しさん:2010/11/17(水) 18:18:52
72デフォルトの名無しさん:2010/11/17(水) 18:32:58
2新数の関係で0.1を10回足しても1.0にならないとか有名だろ
73デフォルトの名無しさん:2010/11/17(水) 18:49:32
        ∧∧  ミ _ ドスッ
        (   ,,)┌─┴┴─┐
       /   つ.  終  了 │
     ~′ /´ └─┬┬─┘
      ∪ ∪      ││ _ε3
               ゛゛'゛'゛
74デフォルトの名無しさん:2010/11/17(水) 18:58:43
10進小数クラス作れば良いだろ
75デフォルトの名無しさん:2010/11/17(水) 19:23:49
電卓はBCD屋根
76デフォルトの名無しさん:2010/11/17(水) 21:00:21
77デフォルトの名無しさん:2010/11/18(木) 00:27:16
ついこの前C#ですごく簡単な電卓を作った
小数は切り捨てられるけど16進 2進にも対応して
and演算もできる
けど実用性がw
78デフォルトの名無しさん:2010/11/18(木) 00:54:20
ウィンドウス付属の電卓超えればいいんじゃね
79デフォルトの名無しさん:2010/11/18(木) 04:01:32
それはかなり難しいな。
80デフォルトの名無しさん:2010/11/18(木) 08:19:03
81デフォルトの名無しさん:2010/11/18(木) 16:08:52
関数電卓の差を見る定番はtan(355)
82デフォルトの名無しさん:2010/11/18(木) 20:27:34
ググったらtan(355/226)って出てきた
83デフォルトの名無しさん:2010/11/18(木) 20:31:27
84デフォルトの名無しさん:2010/11/18(木) 20:51:48
85デフォルトの名無しさん:2010/11/18(木) 21:12:39
86デフォルトの名無しさん:2010/11/18(木) 21:27:16
87デフォルトの名無しさん:2010/11/18(木) 21:35:34
88デフォルトの名無しさん:2010/11/18(木) 21:39:26
作り方が分からない
教えろ
89デフォルトの名無しさん:2010/11/18(木) 22:16:46
90デフォルトの名無しさん:2010/11/18(木) 22:21:10
ハートの出し方教えろ。
91デフォルトの名無しさん:2010/11/18(木) 22:51:43
92デフォルトの名無しさん:2010/11/18(木) 22:58:05
あげ
93デフォルトの名無しさん:2010/11/18(木) 23:13:54
あげても無駄だ。
94デフォルトの名無しさん:2010/11/19(金) 02:27:51
あげ方教えろ
95デフォルトの名無しさん:2010/11/19(金) 08:29:15
96デフォルトの名無しさん:2010/11/19(金) 09:28:39
97デフォルトの名無しさん:2010/11/19(金) 16:27:31
age
98デフォルトの名無しさん:2010/11/19(金) 17:33:53
99デフォルトの名無しさん:2010/11/19(金) 17:38:54
もう話題が尽きたな。
100デフォルトの名無しさん:2010/11/19(金) 17:58:22
101デフォルトの名無しさん: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]]]}
102デフォルトの七氏さん: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
103デフォルトの名無しさん:2010/11/19(金) 20:49:05
>>102
二つの数字を足すソフトはもう作った
104デフォルトの名無しさん:2010/11/19(金) 21:02:37
>>103
コード晒せ
105デフォルトの名無しさん:2010/11/19(金) 21:02:54
>>1
四則演算程度の電卓ならVBとかC#使えばバカでも作れるだろ。
106デフォルトの名無しさん:2010/11/19(金) 21:55:52
たぶん1は高速なのを作りたいんじゃないの
107デフォルトの名無しさん:2010/11/19(金) 22:02:19
108デフォルトの名無しさん:2010/11/19(金) 22:05:31
enzansi=[+ - * /] -> GUI.makeTheseButtons(hurry())
output.LEDlikeDisplay <- do(fuckking.hurry())[input + enzansi + input]
rest(in(peace(the world)))
109デフォルトの名無しさん:2010/11/19(金) 22:08:50
30のコードはコンパイルできなかった

自分でメソッド作ったほうがいいのか
110デフォルトの名無しさん: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)))
111デフォルトの名無しさん:2010/11/19(金) 22:13:26
>>109
エラーメッセージは?
112デフォルトの名無しさん: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#でもコンパイルエラーになる
113デフォルトの名無しさん:2010/11/19(金) 22:31:37
>>112
まずwhileの前にkeisan1に値を入れて一番上のエラーを潰したら?
114デフォルトの名無しさん: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

115デフォルトの名無しさん:2010/11/19(金) 22:40:45
>>114
コードは?
116デフォルトの名無しさん: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);


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

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

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

文字を入れても駄目だった
121デフォルトの名無しさん:2010/11/19(金) 22:59:57
>>120
コードは?
あとsageで
122デフォルトの名無しさん: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);


}
}

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

string moji1 = a;
に変えた
125デフォルトの名無しさん:2010/11/19(金) 23:04:14
>>124
aは文字ではない。
126デフォルトの名無しさん: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

127デフォルトの名無しさん:2010/11/19(金) 23:12:16
Runtime errorは出ても問題ないのか
128デフォルトの名無しさん:2010/11/19(金) 23:13:07
>>126
もうすぐだ。
sageろっての。

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


// い
// う
// え

がエラーなかったら



// う
// え

これも大丈夫なら




// え

と少しずつはずしていけば場所が分かる
129デフォルトの名無しさん: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);


}
ここでエラーになった
130デフォルトの名無しさん:2010/11/19(金) 23:27:07
>>129
その悪い行をコメントアウトして
かわりにその時点でnyuuryokuに何が入っているか表示させてみたら?
131デフォルトの名無しさん:2010/11/19(金) 23:32:23
>>130
エラーの原因は↓だった
while (keisan1 != -1){

132デフォルトの名無しさん:2010/11/19(金) 23:36:10
>>131
解決した?
133デフォルトの名無しさん:2010/11/19(金) 23:37:50
>>132
whileは負の数を使えないのか
134デフォルトの名無しさん:2010/11/19(金) 23:40:49
>>133

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

こうコメントアウトするとどうなる?
135デフォルトの名無しさん:2010/11/19(金) 23:44:05
>>124
同じエラーが出た
136デフォルトの名無しさん:2010/11/19(金) 23:45:19
>>135
じゃ keisan1 = nyuuryoku.IndexOf("+"); が悪い行だよな。
これもコメントアウトしてnyuuryokuになにが入ってるか見たら?
137デフォルトの名無しさん:2010/11/19(金) 23:45:29
安価ミス
>>134
138デフォルトの名無しさん:2010/11/19(金) 23:56:08
この前perlで数百ケタ同士の掛け算ができるスクリプト作ったら
計算終わるまでに20分とかかかってワロタww
そのあとBigIntあるとか知ってさらにワロタwww
139デフォルトの名無しさん: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");
}
}
}
これでもできなかったから負の数を使わないメソッドを自分で作ればいいのか
140デフォルトの名無しさん:2010/11/20(土) 00:01:38
>>139
それがだめなのは>>112だからだろ
そんなことより>>136の結果は?
141デフォルトの名無しさん:2010/11/20(土) 00:07:01
>>140
ideoneというサイトだと実行できない
いまコンパイラをインストールしてる
142デフォルトの名無しさん:2010/11/20(土) 00:08:13
>>136
は前にやったが入力した文字が表示された
143デフォルトの名無しさん:2010/11/20(土) 00:08:17
>>141
おk
144デフォルトの名無しさん:2010/11/20(土) 00:14:26
>>139
今回のに関係ないが
if (a = -1){
じゃなくて
if (a == -1){
145デフォルトの名無しさん:2010/11/20(土) 00:25:33
入力した文字が表示された

ここは問題ないのか
146デフォルトの名無しさん:2010/11/20(土) 00:29:17
コメントをなくして実行すると
入力文字列の形式が正しくありません。
と表示される
147デフォルトの名無しさん:2010/11/20(土) 00:29:20
>>145
なにも入力しないとどうなる?
148デフォルトの名無しさん:2010/11/20(土) 00:31:07
>>147
同じエラーが出る
suuchi1 = Convert.ToInt32(moji1);
が問題のようだ
149デフォルトの名無しさん: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
150デフォルトの名無しさん:2010/11/20(土) 00:37:36
>>148
>同じエラーが出る
って事はIdeone上では何も入力しない状態だったってことだ。
(「null readline」 で検索)

あとはがんばれ
明日早いんで寝る
151デフォルトの名無しさん:2010/11/20(土) 02:01:28
>>101

何コレ?

何の言語かさえ分からん。
152デフォルトの名無しさん:2010/11/20(土) 02:36:04
電卓なんてそこいらのプログラミングの本にサンプル載ってるだろ
馬鹿だ。関数電卓ですら簡単に作れるのに
難しいのは()を使った構文解析とかだ
153デフォルトの名無しさん:2010/11/21(日) 04:13:10
ttp://ideone.com/G3ul5
Luaで適当に書いてみたけど途中で飽きた。誰か完成させて。
154デフォルトの名無しさん:2010/11/22(月) 10:16:51
精度はあんまりよくないけど、昔ネトゲ用に自作電卓を作った
JavaScriptで、現在入力してる数値が見れるのが売りで、割り算後の小数点切捨てと小数点ありの結果も同時にだしている
155デフォルトの名無しさん:2010/11/22(月) 16:20:24
>>154
うp!うp!
156デフォルトの名無しさん: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>
157デフォルトの名無しさん:2010/11/23(火) 22:31:37
演算はどうでもいいので2~36進変換したいです
158デフォルトの名無しさん:2010/11/23(火) 22:38:34
やり方知らんのか?
159デフォルトの名無しさん:2010/11/23(火) 22:46:35
浮動小数点の10進数以外の表示はライブラリがそろってないからそれなりに難しいな。
160デフォルトの名無しさん:2010/11/23(火) 23:29:26
>>158
書いてみてください
161デフォルトの名無しさん:2010/11/23(火) 23:47:41
手計算してみ、小学校で習う、出来るだろ
162デフォルトの名無しさん:2010/11/23(火) 23:52:00
なんだ結局煽るだけか。
163デフォルトの名無しさん:2010/11/23(火) 23:54:03
浮動小数点なのか整数(または固定小数点)なのかはっきりしる。
164デフォルトの名無しさん:2010/11/24(水) 00:11:12
>>163
おまかせします
165158:2010/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)
------------
166デフォルトの名無しさん: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
これが答え。
167166:2010/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);
}
}
168デフォルトの名無しさん:2010/11/25(木) 01:14:21
特殊用途計算尺作成ツールなんかどうよ?
汎用の計算尺シミュレーターは沢山あるが
http://homepages.slingshot.co.nz/~timb3000/intro/intro_screenshots.html
こういった特殊用途の計算尺のシミュレータをつくるツールがあったら楽しいんじゃないか。
http://www.sliderules.info/collection/coll-specialised.htm

たとえば日没時刻計算の計算尺をつくってプラネタリウムソフトにくっつけるとかそんなの
169デフォルトの名無しさん:2010/11/25(木) 22:04:49
全く使わないがこういうサイトもある

http://keisan.casio.jp/
170デフォルトの名無しさん:2010/11/25(木) 22:44:40
知らんかった。ここ、便利だな。
171デフォルトの名無しさん:2010/11/26(金) 00:28:55
1は>>149を最後に居なくなったのか
172デフォルトの名無しさん:2010/11/26(金) 12:34:15
スレタイが

電車作る


に見えたぞ

A列車でいこう

とか

オープンワールド系RPGの世界に列車を走らせるのを想像したぞ
173デフォルトの名無しさん:2010/11/26(金) 16:18:15
ゼロヨンじゃねえんだし
敷かれたレールの上をスケジュール通りに走って何が楽しいのか
174デフォルトの名無しさん:2010/11/26(金) 16:36:04
様々な要因で遅れうる運行を、スケジュール通りに動くよう設計するのが楽しいんじゃないか。
完成されたシステムは、整然と動き続ける列車は、効率よく、美しい。
プログラミングに通じるものが、そこにはある。
175デフォルトの名無しさん:2010/11/26(金) 19:17:54
>>174
プログラミングの前に、真っ先にグラフ理論が思い浮かんだ
176デフォルトの名無しさん:2010/11/27(土) 00:05:59
組合せ最適化→Prolog
177デフォルトの名無しさん:2010/11/27(土) 02:28:17
MATLAB
178デフォルトの名無しさん:2010/11/27(土) 16:48:20
> 82
pi/2の近似値ですね。ちなみにPCですると、
-7497258.17914
となったが、どうひょうかはするのか?
179デフォルトの名無しさん:2010/11/27(土) 23:17:54
安価もちゃんとつけれないとか、専ブラ使えよ・・・
180デフォルトの名無しさん:2010/11/27(土) 23:31:52
>>178
日本語でOK
181デフォルトの名無しさん:2010/12/02(木) 22:03:26
>>37
JavaのBigDecimal,BigIntegerがあれば十分。

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

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


卒論や修論で電卓を作るとか言ってる奴が過去に研究室にいたがあれはひどかった。
教授も内心馬鹿にしてたし。新規性があれば作ってもいいという考えだから
教授はほとんどツッコミをいれなかったがね。
182デフォルトの名無しさん:2010/12/02(木) 22:33:04
きっと、その人はまともな研究テーマがちゃんとあって、そのための基礎データを集めたりとか何かするのに電卓アプリが必要だったんだよ、たぶん。
こう、ユーザーインタフェースに関する実験で、どのボタンが一番頻繁に押されるのか、とか、どのボタンが一番押し間違われやすいか、とか。
知らんけど。
183デフォルトの名無しさん:2010/12/02(木) 23:21:28
電話の数字は
123
456
789
 0
なのに
テンキーとか電卓は
789
456
123

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

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

>>1
これでは学習の効率悪すぎる。
まずは薄いC#の入門書を一冊やることをオススメする
186デフォルトの名無しさん:2010/12/05(日) 13:25:47
ビジュアルプログラミング言語SCRATCHで書かれた電卓色々
http://scratch.mit.edu/tags/view/calculator/loveits
ソースは開発環境入れないと見れない
http://info.scratch.mit.edu/Scratch_1.4_Download
187デフォルトの名無しさん:2010/12/08(水) 00:46:10
C# でも Decimal 型があるのに
188デフォルトの名無しさん:2010/12/08(水) 01:18:35
>>178
tan(355/226) = -7497258.185325587112905071831891248663.....
だから小数第一位までしか合ってない。

tan(52174/33215) だと整数部分まで合わないんじゃないか?
189デフォルトの名無しさん:2011/05/14(土) 08:15:35.84
>>1ではないが電卓作ってる。
(BCD自前で作ったので)計算結果が正しいかどうかわかんないという
とても怖い電卓になってる

冪と根作るのがめんどくせぇ…
190デフォルトの名無しさん:2011/07/09(土) 11:03:40.46
電卓の作成はプログラミングの基礎力アップに丁度良い課題だよね
191デフォルトの名無しさん:2011/07/10(日) 01:54:19.81
RPN電卓だ~いすき!
192デフォルトの名無しさん:2011/07/10(日) 03:39:15.02
電卓なんて、evalですぐできるじゃん
193デフォルトの名無しさん:2011/07/10(日) 03:43:27.10
最初は eval でも良いよ
194デフォルトの名無しさん:2011/07/10(日) 04:50:29.45
まあそうevalなよ
195デフォルトの名無しさん:2011/10/31(月) 11:09:43.80
何でもREPLに結びつける思考を始めると何も作らなくなる
そのうち使わない魔法が真の魔法だとか言い出すようになる
196デフォルトの名無しさん:2012/01/12(木) 17:53:39.30
バグの炙り出しを工夫しよう
197デフォルトの名無しさん:2012/06/13(水) 19:19:52.42
198デフォルトの名無しさん:2012/06/13(水) 19:24:06.16
なぜひょうたん
199デフォルトの名無しさん:2012/06/25(月) 11:42:28.34
。。。
200デフォルトの名無しさん:2012/06/26(火) 18:25:14.44
あげ
201デフォルトの名無しさん:2012/06/27(水) 10:42:15.93
>>151
mathematicaだと思う
202デフォルトの名無しさん:2012/06/27(水) 14:01:41.07
>>173
そういいつつhelloworldやるんだろ?
203デフォルトの名無しさん:2012/06/27(水) 14:14:41.56
計算尺と電卓のハイブリットで高性能なのがなかなか無い
http://itunes.apple.com/jp/app/dejiana-dian-zhuo/id427451522?mt=8
これの関数電卓版とかRPN版とか
204デフォルトの名無しさん:2012/06/30(土) 10:17:10.12
delphiで普通の電卓つくりたいんですが、= の部分がよくわかりません。どなたか教えてください。
205デフォルトの名無しさん:2012/06/30(土) 11:18:00.15
>>204
それ以外は判るのか? なら頑張れ。

普通は、=キーを押したときに何をすべきか考えてから他を作るもんだがな。
206デフォルトの名無しさん:2012/06/30(土) 14:15:03.55
定数を繰り返し演算するってこと?
207デフォルトの名無しさん:2012/06/30(土) 19:03:09.47
電卓作るスキルがあれば、オリジナル言語のインタープリターも作れる。
208デフォルトの名無しさん:2012/06/30(土) 19:18:31.02
オートマトンの勉強になるね。
で、一番の問題はCASIO系電卓とSHARP系電卓の操作性の違いという…。
209デフォルトの名無しさん:2012/06/30(土) 19:43:35.49
電卓の規格統一すんのか?
嫌だろ
210デフォルトの名無しさん:2012/06/30(土) 23:10:37.92
有効桁なんて3桁ありゃ十分
211デフォルトの名無しさん:2012/07/01(日) 00:02:30.85
>>210
あんたは千円札も使ったことがないのか?
212デフォルトの名無しさん:2012/07/01(日) 00:06:39.77
察してやれ
213デフォルトの名無しさん:2012/07/01(日) 00:15:07.63
法外に桁居るのは金勘定だよな
自然科学じゃありえん
214デフォルトの名無しさん:2012/07/01(日) 00:27:51.37
4桁は欲しい
215デフォルトの名無しさん:2012/07/01(日) 00:57:10.73
1桁も要らん。オーダーさえ分かればおk
216デフォルトの名無しさん:2012/07/01(日) 01:31:43.51
小さい事務所でも8桁電卓じゃ足りないが、俺のおこずかい計算だと
1円単位はわりとどうでもよく、1万以上は滅多に無い
と言うわけで3桁電卓で足りる
217デフォルトの名無しさん:2012/07/09(月) 18:32:14.49
3桁なら計算尺で賄える桁だな。
ソロバンもいいが計算尺は小中学校でやらせてもいいんじゃないかな。
最近はやりの地頭力ってやつにもなるだろうし
218デフォルトの名無しさん:2012/07/09(月) 20:48:39.07
現実的に物理/工学的な問題に対処する場合, 必ず確度が問題になるのに
電卓使い慣れると確度のこと忘れる奴がたくさんいるから, 計算尺ってのは
必要だと思うよ

219デフォルトの名無しさん:2012/07/09(月) 21:47:12.81
>>215
宇宙関係だとそうゆうケースも沢山ありそね
220デフォルトの名無しさん:2012/08/13(月) 08:42:52.00
計算尺?不要だよ。あんなもんありがたがってるのは老害だけ。
Addiatorと同じで消えて当然。
221デフォルトの名無しさん:2012/08/15(水) 22:13:00.32
>>220
あくまで授業の数時間ならいいじゃん。
つか計算尺現役世代に聞いても皆使い方忘れていたな。
プログラミンなる劣化Scratch教えるよりはマシだろう。
222デフォルトの名無しさん:2012/11/01(木) 07:34:42.91
だろうね
223デフォルトの名無しさん:2012/11/01(木) 21:46:08.72
log2(3) * log2(5) = log2(8)
224デフォルトの名無しさん:2013/09/08(日) 16:19:04.39
BCDでn乗根(nは実数)求める方法探し中…
225デフォルトの名無しさん:2013/10/22(火) 00:05:11.75
保守しておこう。一応作って一応動いてる。
226デフォルトの名無しさん:2013/12/31(火) 21:29:00.06
がんばれ電卓
227デフォルトの名無しさん:2014/01/05(日) 10:06:15.18
まずボタンと液晶を用意します
228デフォルトの名無しさん:2014/01/05(日) 21:01:04.17
電子工作かよ
229 忍法帖【Lv=39,xxxPT】(1+0:5) :2014/01/09(木) 00:18:46.81
ts
230デフォルトの名無しさん:2014/01/19(日) 17:43:02.64
ts
231デフォルトの名無しさん:2014/01/31(金) 19:00:29.34
※※※テナント募集中※※※

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

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

株式会社 ★◆▲▲
232デフォルトの名無しさん:2014/01/31(金) 20:14:50.00
十進BASIC だと桁落ちしない。
233デフォルトの名無しさん:2014/01/31(金) 20:24:34.66
234デフォルトの名無しさん: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
235デフォルトの名無しさん:2014/02/01(土) 07:41:39.04
電卓のオートマトンかくの そうよ かくのよ
236片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/02/01(土) 12:48:14.21
まず、Bison+Flexの基本を勉強しましょう。
http://katahiromz.web.fc2.com/mathai/compiler-tech-ja.zip
237デフォルトの名無しさん:2014/02/01(土) 16:48:12.74
電卓プログラムを例題に出してくる参考書ってありそうでないだろ
238片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/02/02(日) 13:34:18.32
「週間電卓を作る」創刊。

「週間電卓を作る2月2日号」
http://katahiromz.web.fc2.com/mathai/mzcalc1.zip
変数と三角関数が使えます。
239片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/02/09(日) 15:57:35.18
「週間電卓を作る2月9日号」
http://katahiromz.web.fc2.com/mathai/mzcalc2.zip

Boost.Spiritを使ってみました。
関数が使えるが、変数への代入ができない。
240デフォルトの名無しさん:2014/02/10(月) 14:18:19.00
1 239 -
241片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/02/10(月) 21:45:21.11
ご要望を受け付けてます。どんな電卓を作りたいかを伝達下さい。

例)多倍長演算で無限桁数サポート。GUIを付ける。ユーザ関数機能。数式処理。
242片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/02/10(月) 22:10:49.29
分数計算、型システムも考えとくか
243デフォルトの名無しさん:2014/02/11(火) 22:13:32.44
いきなり伸びててびっくりした
244片山博文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
245片山博文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
>
246片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/02/16(日) 13:46:20.52
「週間電卓を作る」は廃刊しました。読者の皆さん、ありがとうございました。
247デフォルトの名無しさん:2014/02/16(日) 14:23:33.29
おさるがココナッツ投げる電卓がほしいです
248デフォルトの名無しさん:2014/02/16(日) 17:31:15.48
なにそれ、俺も欲しい!
249デフォルトの名無しさん