[H8-ML(5806)] Re: [H8-ML(5776)] C言語の基本でしょうが
From: "dimension" <dimension4500c@xxxxxxxxxxx>
Date: 2006年01月29日(日)11時38分54秒
亀井さん

> H8に限った事ではありませんが
> 小数点を含む計算をどのように書いたら良いのかわかりません。
> 浮動小数点と固定小数点とか 倍精度とかいろいろ聞いた事はありますが
> C言語での記述方法がわかりません。

float x, y ;
double x,y ;

こんな感じで、単精度実数、倍精度実数が宣言できます。
今回、ワテもこのMLで習ったのですが、
これにlong を付加すると倍倍制度になるANSI規格が出来てたようです。

> 何に使いたいのかというと
> PID制御で、各パラメータの値が参考文献では少数で指定されているため
> そのままの式をCで書けなくて困っています。
> http://www.picfun.com/motor05.html

そうした実数を含む式は、だいたいそのままの式で書けます。

例:

#include <stdio.h>
#include <math.h>

double functin_keisan( double x, double y)
{
 a=1.41421356;
 b=3.141593;
 c=1.7320508 ;

 z = a*x + b*y + c ;

 return z ;
}

void main()
{
 double x1, y1 , z1 ;
 x1 = 1.2 ;
 y1 = 2.3 ;

 z1 = function_keisan(x1, y1) ;

 printf (%lf, z1 ) ;
}

Borland社が無償のC/C++コンパイラを出していますので、
サイトでダウンロードして、C言語の入門書を購入し、
まずパソコンを使って、C言語を先にマスターするのが良いと思います。
http://www.borland.co.jp/cppbuilder/freecompiler/

PID制御のわかるようなレベルのかたでしたら、入門書を読んで
1日かければ(過去にプログラミング経験がある条件で)
ひととうりのC言語プログラムが殆ど組めるようになります。
C言語は非常に小さな言語処理系でkey wordも30くらいで少ないので
他の言語より習得が楽ですよ。

固定小数点の説明は既に出たようですので省略します。
浮動小数点のほうが使いやすいです。
最初のころは、そのデータ形式の意識は不要で、
単にコンパイラに任せ、プログラムをコンパイルすれば良いです。

浮動小数点形式をあえて知りたいならここなどに書いてあります。
http://msugai.fc2web.com/java/binary.html

dimension




スレッド概略
[表示中](起点)
 └[5808(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]