質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

2回答

645閲覧

C++(Xcode) オイラー法 エラーの解決方法を知りたい

ika_ika

総合スコア7

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2020/07/28 03:48

###前提・実現したいこと
常微分方程式の初期値問題、y'=x+y、0≦x≦1、y(0)=1、分割幅h=0.1の条件のもとでx=0.1,0.2,…,1.0の時のyの値をオイラー法で求めるという問題です。どうしてもエラーが出てしまう為解決方法を教えて頂きたいです。

作ったコード

C++

1#include <stdio.h> 2#include <math.h> 3double F(double x, double y) // f(x)の微分値 f'(x) 4{ 5 return x+y; 6} 7 8double euler(double x0, double xn, double y0, int n, int modulo) 9{ 10 int i; 11 double x, y, h; 12 13 x = x0; y = y0; h = (xn - x0)/n; 14 for (i = 1; i <= n; i++) { 15 y += F(x) * h; 16 x = x0 + i * h; 17 if(i % modulo == 0) 18 printf("%-10f %-20.15f\n", x, y); 19 } 20 return y; 21} 22 23int main(void) 24{ 25 double x0=0.0; // x の初期値 26 double xn=1.0; // x の最終値 27 double y0=1.0; // y の初期値 28 int n= 10; // 区間の数 29 int modulo=1; // 区間番号がmodulo 30 31 printf(" %-8s %-20s\n", " x", " y = f(x) "); // %-8s は文字列を8桁の幅の中に左寄せで印字する指定 32 euler(x0, xn, y0, n, modulo); 33 34 return 0; 35}

エラー部分

C++

1for (i = 1; i <= n; i++) { 2 y += F(x) * h; No matching function for call to 'F' 3 x = x0 + i * h;

自分では解決方法が思いつかなかった為質問させて頂きました。
よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

y += F(x) * h;

y += F(x**,y**) * h; じゃなくて?

投稿2020/07/28 06:17

episteme

総合スコア16612

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ika_ika

2020/07/28 14:03

気付きませんでした…。教えて頂きありがとうございました。
guest

0

double F(double x, double y) // f(x)の微分値 f'(x)

F関数は引き数を2つ取りますが、そうなっていないため、エラーが出ています。
そこらへんどうにかしましょう

投稿2020/07/28 03:53

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ika_ika

2020/07/28 14:01

回答して頂きありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問