• 締切済み
  • 暇なときにでも

delphiで

 delphiでXのY乗といった数値計算をさせたいのですが、演算子を見つけることができません。どなたか教えていただけないでしょうか。また、演算子がないのであれば簡単なロジックを教えてください。

  • pei
  • お礼率100% (1/1)

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数352
  • ありがとう数10

みんなの回答

  • 回答No.1

べき乗が演算子として用意されているのはBASICくらい ではないでしょうか? 関数で提供している言語のほうが多いと思います。 ヘルプでpower関数を調べてください。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

アドバイス大変ありがとうございました。ヘルプでpower関数を調べたところ無事、計算させることができました。本当にありがとうございます。

関連するQ&A

  • Delphi Like 演算子

    MS Access VBA のLike 演算子みたいなものは、Delphiにないでしょうか? 2 つの文字列の比較を行なう演算子です。 例えば s1:='中野'; s2:='東京都中野区'; if s1 like s2 then flg=true; s2の文字列のなかにs1が含まれていることを判断する演算子ですが・・・

  • 数値計算の計算コストを下げるためのこつ

    時間のかかる数値計算をなるべく早く終わらせるためのコツについてまとめられているサイトや書籍があれば教えてください。 例えば、 http://www.index-press.co.jp/books/excel/excel-02.pdf のページに少し書かれています。 こういうちょっとしたコツがもっと書かれている書籍ってないでしょうか? また、 足し算、掛け算、指数計算、sin計算、sinh計算 など様々な関数や演算子がありますが、これらの計算で どれがもっとも時間がかかるとかってまとめられている書籍とかってないのでしょうか?

  • 半導体中の二重量子ドットについて

    物性、量子力学ともに初心者です。 半導体中の量子ドットの電子挙動を考えたいと思います。 ハバードモデルにおける強相関電子系相互作用を考え 量子ドット中の電子数の移り変わりを考えたいのですが、 どのように数値計算してよいのかさっぱり分かりません。 ハバードモデルにおけるハミルトニアン H = H_u + H_t + H_U + H_J ドットのナンバー i=1or2, スピンσ=↑or↓として、 H_u = -Σ_iσ(u_i*n_iσ)・・・ケミカルポテンシャル H_t = -Σ_σ (t*c†_1σ*c_2σ + H.c.)・・・トンネルカップリング uはドット内ポテンシャル c†は生成演算子、cは消滅演算子,nは数演算子 H_U = ・・・以下省略 おおまかに現象と式の対応を理解しているつもりなのですが、 このようにここで、uが分かっている場合、 実際にここで数値計算によりシュレディンガー方程式 解く際に生成演算子や消滅演算子、数演算子にはどのような値または行列を 代入すればいいのか全くわかりません。 調べても演算子の性質などの説明ばかりで、いまいちわかりません。 さらにこのハミルトニアンが与えられている状態だけで、固有状態、固有ベクトルが 求まったとしても、ドット内の電子遷移がどのようにあらわれてくるのか想像が 全くつかない状態です。 余談ですが、当方情報科学を専攻しており、このような物性や量子力学を全くの 我流で勉強しており、指導者がいない状態です。 どなたか丁寧に教えて頂けないでしょうか・・・

  • 数値+演算子+数値を計算したい!

    数値1+演算子+数値2を計算させたいのですが、1 + 1 のような計算を格納するにはどうしたらいいですか? 数値1 Decimal 数値2 Decimal 演算子 String 結果  Decimal Decimal = Decimal + String + Decimal だとエラーが出ます。当たり前ですけど・・・

  • Delphiでキューを作りたい

    Delphi初心者です。ゲームを制作中なのですが、相談に乗って頂けますでしょうか。 プログラムの骨格は、演算→描画の繰り返しなんですが、演算結果を次々と描画ルーチンに渡すと、描画が間に合わなくなったときに破綻してしまいます。 (描画で使っているコンポーネントがクラッシュしてしまう) そこで、演算部で表示させるものを計算しキューに追加していき、CPUのアイドル時間を見つけてはキューから順次取り出して描画、という方法を試したいと思います。 (オーバーフローしたら破棄する) そこで、スタックとかキューを使ったことがないのですが、単純に配列を使って、 1.データを最後尾に加える 2.データを先頭から出し、順次前に詰める 簡単な方法があったら教えて頂きたいと思います。 (それくらい手動でやれと言われそうですね(^_^;) よろしくお願いいたします。

  • ほかの人のも参考にしたいのでよろしくお願いします

    if文、for文、switch文、while文、do-while文、配列、バブルソートをなるべく使用し四則演算ができる電卓を作成せよ. 出力例のように 1.数字を入力 2.演算子を入力 3.数字を入力 4.演算子を入力 のように'='を入力するまで演算を続けるようにせよ. また,実数で演算できるようにせよ. ソースファイル名はprog06.c,データファイル名はprog06.datとしなさい。 <実行結果例> 数値を入力せよ 3.4 演算子を入力せよ(+,-,*,/) + 数値を入力せよ(Ans=3.400000) 1.25 演算子を入力せよ(+,-,*,/) - 数値を入力せよ(Ans=4.650000) 1.6 演算子を入力せよ(+,-,*,/) 1 演算子が違います 演算子を入力せよ(+,-,*,/) * 数値を入力せよ(Ans=3.050000) 2.9 演算子を入力せよ(+,-,*,/) / 数値を入力せよ(Ans=8.845000) 4 演算子を入力せよ(+,-,*,/) = Ans=2.211250

  • Delphiでバッチ処理を直ぐに書きたい

    Delphiは初心者です。質問を考えながら我ながらメチャク チャだと感じてますが、妙薬があることを信じて質問します。 教えて貰いたいのは、次のプログラムを書くのに参考に なるものです。 サイトや本などでサンプルプログラムがあると嬉しい。 【やりたいこと】 過去19年分の日経平均株価データ(レコード数約5千件 10フィールドのCSVファイル)を入力し、テクニカル 分析(10種類でバリエーションを含めて50の結果)を CSVファイルに書き出すプログラムを作る。 【必要な計算】 四則演算と最大25レコードの最大値、最小値、ソート 処理など。 【プログラミング経験】 COBOLならリファレンスマニュアルを見ればどうにか なるレベルです。しかし、Delphiは以前、入門書を読みな がら勉強したものの投げ出しました。 Delphiに拘る理由は、手元にDelphi Studio7しかありません。

  • 微分演算子について質問です。微分演算子はδ/δxやδ/δyなどと表され

    微分演算子について質問です。微分演算子はδ/δxやδ/δyなどと表されますが、微分演算子同士をかけたりしたとき、交換したり、分配したりすることができますよね。また、δ/δx(▽×A)=▽×(δ/δx)Aのようにできたりします。これは微分演算子は多元環の元ということでしょうか?また、δ/δx(▽×A)=▽×(δ/δx)A(外積の計算)というようにかけるのは、微分演算子を、外積の計算におけるスカラー乗法のように考えてもいいということなのでしょうか?わかる方がいらっしゃいましたら教えてください。

  • VC++の電卓です

    初めての投稿になります。 VC++2005で演算子の優先度を識別する電卓を作成しようと試みているのですが、( )の処理がどうにもうまく行きません。 改善点など、ご意見を頂ければ幸いに思います。 詳細に関しては以下の通りです。 仕様 開発環境 VC++2005 開発対象 +-×÷( )の優先度を識別して計算を行う電卓。 備考 BackやCEの機能は考えず、まずは正しい計算結果を求めることが出来れば良い。 問題があると思われるコード //グローバル変数 int num[100];//数値を格納する配列 int op[100];//演算子を格納する配列 int num_count = 0;//数値配列の位置を格納する変数 int op_count = 0;//演算子配列の位置を格納する変数 int ans;//解答を表示 //計算処理 int calculat() { int num1 = num[num_count++];//最初の数値を格納 int num2 = 0;//一つ目の値と二つ目の値を格納しておく変数 int ope = op[op_count++];//最初の演算子を格納 while(ope > 0)//演算子が0(=)にならない限り計算を続ける { switch(ope) { //演算子が+か-の場合 case 1: case 2: num2 = calculat();//再帰的に calculat を呼び出す break; //演算子が×か÷の場合 case 3: case 4: //更に次の演算子が(の場合 if(op[op_count] == 5) { num2 =calculat(); break; } else { num2 = num[num_count++];//二つ目の数値にnum1の次の数値を格納 break; } //演算子が)の場合 case 6: return num1; break; } switch(ope)//格納されている演算子によって処理が異なる { //+の場合 case 1: num1 = num1 + num2; break; //-の場合 case 2: num1 = num1 - num2; break; //×の場合 case 3: num1 = num1 * num2; break; //÷の場合 case 4: num1 = num1 / num2; break; } //次の演算子を格納 ope = op[op_count++]; } return num1; } 計算処理を行う関数 calculat() を再帰的に呼び出すことで優先順位を付けた計算を行っている。 現在のコードで、四則演算までは問題なくこなすことが可能。 ( )を含めた計算も、ループに関しては問題ないが、正しい計算結果が返ってこない。 考えられる原因は計算処理の三行目 int num1 = num[num_count++]; 『演算子が(の場合』で再帰的に関数 calculat() を呼び出した際に限り、 num1に 0 が格納されてしまう。 = num[num_count++]; の処理が行われていない模様。 以上です。 非常に見づらいコードで申し訳ありませんが、よろしくお願いします。

  • 演算子を使わない演算

    はじめまして、ヨロシクお願いします。 早速ですが、私は今「入力された数値を7で割った値を表示しろ」という問題に取り組んでいます。これには次の条件があります。 (1)演算子の/を使ってはいけない。 (2)繰り返し処理を使ってはならない。 という縛りがある上で計算をしたいと思っているのですが、なかなかうまくいきません。何かいい方法はないでしょうか。 よろしくお願いします。

    • ベストアンサー
    • Java

専門家に質問してみよう