• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:c++builder6で複素数計算教えて下さい)

c++builder6で複素数計算教えて下さい

このQ&Aのポイント
  • windows xp を使い c++builder5 で復素数の電気関係の簡単なソフトを作って来ました。これからはc++buildre6で複素数計算をさせたいのですがエラーが発生して困っています。
  • エラーは windows xp 及び windows 8 で発生しています。unit1.cppのヘッダー部分に `#include <complex.h>` を書き、イベントハンドラ部分に `complex<double> z;` と書いて実行ボタンを押すと「未定義のシンボル complex」のエラーが発生します。
  • 上記の解決方法を教えて頂ければ幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

std::complex?

th13294649
質問者

お礼

Tacosan様、有難うございました、 お礼が大変遅くなりました事をお詫びいたします、 おかげさまで正常に動く様になりました。 今後とも宜しくお願いします。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

あ, C++ なら #include <complex> でインクルードするのが (今では) 適切です.

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • C++Builder6 での複素数計算

    C++builder6 で複素数計算が出来なくて困っています、 UNIT1.CPPのヘッダー部分に  #include <vcl.h>  #pragma hdrstop  #include <iostream>  #include <complex.h>  #include "Unit1.h" //-----------------------------  #pragma package(smart_init)  #pragma resource "*.dfm" を書いて イベントハンドラ部分に変数の宣言   complex<double> z; として緑色三角形の実行ボタンをクリックすると   「未定義のシンボル complex」 と言うエラーが発生します、 この解決方法を教えて頂ければ幸いです、宜しくお願いします。 (なお C++builder5 では何の問題もなく複素数計算のソフトが出来ていました)   

  • C++ Builderでユニットの追加

    趣味でプログラミングを行ってますCerapodaと申します。 Builderを使って1つのFormと1つのCpp,hファイルを使ったプログラミングならある程度のところまで出来ると思っているのですが 以前違うプロジェクトで作った関数を新たなプロジェクトで使おうとして いちいちコピー&ペーストするのも大変なので ひとつのユニット&ヘッダーファイルとしてインクルードして使いたいなと思いました。 そこで http://www.osakac.ac.jp/labs/matsuura/japanese/program/C++Builder/Project/projectManyForm.htm このページを参考にしてUnit1とUni2を作成し Unit2に double Analysis::Function(double val) { return(1.0-val); } の関数を追記。 Unit1のcppに C.Function(0.5); と書き加えたのですが [リンカ エラー] 外部シンボル '_C' が未解決… とエラーが表示されてしまいます。 どこに問題があるのか教えていただければ幸いです。 情報が足りない場合は、補足しますのでよろしくお願いします。 また、このような作業で参考になるサイト,URL等ありましたら教えていただけると幸いです。 よろしくお願いします。

  • 【C++】複素数で配列を使いたい

    昨日QNo.3714177で「複素数complex.hがおかしいのでしょうか?」 と言うタイトルで質問させて頂いた、C言語初心者です。 お世話になっております。 今日一日中やっており、C++も少しは理解できるようになったぞっと思った矢先、またまた、問題が発生しました。 複素数の中で、配列を使おうとするとエラーが発生します。 ソースは以下の通りです。上段に私が書いたもの、下段に前回の質問時に教えて頂き、動いたものを記載しております。 どこが間違えているのか教えて頂きたく思います。 よろしくお願い致します。 ============================================================================================================ #include <iostream> #include <iomanip> #include <complex> using namespace std; int main () { int i; for (i=0; i<3; i++) { std::complex <double> Z[i] (i,i); std::cout << "Z[" << i << "]= " << Z[i] << "\n"; } return 0; } //ここより下のみでは動きます。 #if0 #include <iostream> #include <complex> int main() { std::complex<double> x(1.2, 3.4); std::complex<double> y(5.6, 7.8); std::cout << "x = " << x <<"\n"; std::cout << "x = " << y <<"\n"; } #endif ============================================================================================================ Borland C++ 5.6 for Win32 Copyright (c) 1993, 2002 Borland keisan.cpp: エラー E2313 keisna.cpp 11: 定数式が必要(関数 main() ) エラー E2034 keisna.cpp 11: 'int' 型は 'complex<double>[1]' 型に変換できない(関数 main() ) エラー E2293 keisna.cpp 11: ) が必要(関数 main() ) *** 3 errors in Compile ***

  • C++Builder Ver6.0でエラーが発生

    Windows XP のAdminiでC++Builderをインストール した後、guestでログインしてC++Builder Ver6.0 を起動させ、実行させた場合は ”c++致命的エラー Project1.cpp(35):F1013 出力ファイルの書き込みエラー” というエラーが発生します。 原因は何でしょうか? 出力先のパスの指定を書き換えないとだめなのでしょうか?

  • C言語で複素数の計算を行いたいと思っております。

    C言語で複素数の計算を行いたいと思っております。 プログラミングソフトは、C言語を始めよう!を用いています。 しかし変数定義の仕方が分かりません。 複素計算とは具体的に、 exp( i π) (i は虚数単位)です 最初に#include<complex.h>を行いましたが 変数の定義の方法、exp( i π)の定義の方法が いまひとつわからない状態です。 保存するときに、Cファイルではなく、 拡張子をcppに変更してCPPファイルでコンパイルを行っています。 exp( i π)を計算可能なプログラムを 教えて頂ければ幸いです。 ご面倒かと思いますが 回答お願いします。

  • c++ ファイルからの複素数の読み込み

    c++でファイルから複素数を読み込みたいのですが、方法が思いつきません。 ファイルには以下のような形式で複素数が書かれているとします。 ------------------------------------------------------------------------ (1.23,2.34) (2.34,3.45) (3.45,4.56) (4.56,5.67) (5.67,6.78) (6.78, 7.89) ・・・・・ ------------------------------------------------------------------------ かっこの左側が実部で右側が虚部で、1つのかっこが1つの複素数をあらわしています。 このファイルを読み込んで、複素数のvector(vector<complex<double> >)をつくりたいです。 簡単なソース、または考え方をおしえていただけると助かります。

  • Borland C++ Compiler 5.5 無償版

    このコンパイラで複素数は complex<double> j(0.0,1.0),z; で定義しなければなりませんでした 私の古いObjectWindowsコンパイラでは complex    j(0.0,1.0),z; で動きます 何故でしょう またこのコンパイラで complex<double> j(0.0,1.0),z; とする以外に complex ? z; で複素数を宣言できますか? (?のところをどのような文字を入れたらいいかと言うことです) よろしくお願いします

  • Complex.h

    C++Builderで複素数やそれを使った演算を扱っていますが、以下のような使い方が出来ても #include <complex.h> ・ ・ int B=10; complex<double> *A = new complex<double>[B]; 次のような動的な配列の宣言が出来ません。 #include <complex.h> int B=10; int C=500; ・ ・ complex<double> *A = new complex<double>[B][C]; E2034’complex<double>(*)[500]'型は’'complex<double>*'型に変換できない とのエラーが出ます。 正しい、複素数行列の宣言の仕方を教えてください。

  • WIN10でC++BUILDER6のインストール

    WINDOWS10でボーランドC++BUILDER6をCDか らインストールしたところ2枚目のCDを入れる様に要求が有った ので2枚目のCDを入れて間もなく下記のエラーが発生しインストー ルが出来ませんでした、3回程試しましたが全て同じ結果でした。   インストーラ情報 内部エラー 2329.32, C:¥windows¥installer¥50bce5.msi どの様に対処したら良いのか分かりません、宜しくご指導お願い します。 なお蛇足ですが C++BUILDER5 は問題なくインストール 出来て使用出来る様になりました。    

  • Vista(日本語版)に BorlandC++6Builder(英語版

    Vista(日本語版)に BorlandC++6Builder(英語版)をインストールし、かんたんなソースファイル(Unit1.cpp)を入力して Run(実行)したら、妙なエラーになりました。 1.Unit1.obj までは生成できるが、そのあとの Project1.obj 以降が生成できない。 2.ソースファイルをデフォルトのフォルダ(C:\Program Files\Borland\CBuilder6\Projects)に入れると、BorlandC++6Builder の Open(ファイルを開く)からはこれらのファイル(Unit1.cpp, Unit1.obj)が見えるのに MyComputer からは見えない。 3.ソースファイルを別のフォルダ(ユーザのドキュメントフォルダ)にセーブすると、もちろん MyComputer からも見えるようになるが、これをコンパイルするとオブジェクトファイル(Unit1.obj)がどこに生成されるのかわからなくなる。 以上が解決できなくて困っています。私現在、海外の学校でプログラミングを教えているのですが、BorlandC++6Builder を使うのは今回が初めてです。学校のXP(ロシア語版)では問題なく動作しているので(私自身がインストールしたBorlandC++6Builder プログラム+ロシア語版パッチで実行すると、Project1.exe ファイルまですべて同じフォルダ内に生成される)、なぜ私の Vista でできないのか理由がよくわかりません。パッチのせいでしょうか。C++ ぐらい教えるのはわけないと思って安請け合いをしてしまいました(スミマセン)。初歩的な質問かもしれませんが、緊急性を要するのでよろしくお願いいたします。