zz 似曾相识么?《よく似たC言語》
http://www.geocities.jp/eyeofeconomyandhealth/homepage/hojo/mame/c.html#c
よく似たC言語
Fortranだけに限りませんが、プログラミング言語というのは、1種類覚えてしまえば他の言語にも簡単に乗り換えることができるといわれています。それは、どれも書き方が似たものであるからです。僕もFortranのほかに、C言語を学びました(本との基礎だけですけど)。最初はビビリまくりでC言語に突入しましたが、少しの違いだけ呑み込めば、後はすんなりと学習が進んでいきました。ですから、Fortranを学ぶことは、その効果はFortranだけにとどまらないということです。
沢山あるプログラミング言語の中でも、Fortranのように科学計算の中心として使われ、またFortranと似た感覚で使用することができるC言語を少しだけ紹介してみたいと思います。全体の概念さえ理解してしまえば、後は命令文の呼び方の違いぐらいなので、少しがんばってみればプログラミングの代表言語であるC言語を簡単に会得することができます(高度なものはさすがにそれ相応の努力が必要ですが)。Fortranが分かっていれば、乗り換えは簡単です。
試しにC言語でプログラムを書いてみましょう。Fortranで書いた例文が下の文です。
program main
print *,'Hello world!'
end program
そして、これがC言語で記述した場合の文です。
#include
void main(){
printf("Hello world!¥n");
return 0;
}
結構見た目が変わりましたね。でも、最初に適切なヘッダファイル(C言語に必須なのは「stdio.h」)、主プログラムも関数になること、関数の初めと終わりは中括弧、あとは命令文の名称の違いだけ理解できれば、ほとんど同じであることが分かると思います。ちなみに、「void」とあるのは、「この(main)関数は値を返し(持ち)ません」という意味で、それを実行しているのが「return 0」です。値を返すというのは、Fortranでの副プログラムの結果変数に値をしまうことです。この場合は、副プログラムを使用していませんので、mainプログラムを呼び出した別のプログラム単位(例えばFortranのサブルーチン)mainプログラムの値を返す必要がないので、「値0を返す」、つまり値を返さない処理を行なっているというわけです。
では下に、Fortranで使用されている命令文が、C言語ではどのような名称で呼ばれているのかを紹介していきたいと思います。簡単にしか紹介しないので、少ないですが、C言語にはFortranを超える沢山の命令文が他にも用意されています。
integer
int a;
real
float a;
character
char a;
double precision
double a;
配列
int a[3];
write
printprintf("この答えは%d",a);
read
scanf("%d %d",&a,&b);
if else endif
if(a>3){命令文;}
else{命令文;}
case
switch(a){
case 0:命令文
break;
case 1:命令文
break;
default:命令文
break;
}
do
for(i=1;i<8;i++){命令文;}
while(i>=2){命令文;}
do{命令文;]while(i=3);
save
static
type
mainよりも上側で
struct Student{
char name;
int number;
};
void main(){
struct Student seito
seito.number=11
function
mainよりも上側で int sum(int x,int y);
void main(){ int x,y,z;
z=sum(x,y); printf("和は%d",z);
return 0;
}
int sub(int x,int y){
int z;
z=x+y;
return z;
}
どうですか。これは本の一部ですが、結構C言語の言葉はFortranと似ているのではないかと思います。後は慣れです。書き方の形式に慣れてしまえば(特に中括弧とセミコロン)、後はFortranで培った知識を生かせば、簡単にC言語のプログラミングを行なうことができます。C言語にはポインタに代表されるようなFortranよりも強力な操作が可能なので、Fortranでは簡単すぎて飽き飽きしてしまった人にはぴったりかもしれません。
もしC言語をやってみたい・もっと詳しく知りたいと思った人は、ぜひ『プログラムを書こう! C入門』を訪れてみてください。このページはC言語を詳しく分かりやすく書いているページでオススメです。さらにC言語の進化形であるC++や、C言語と並んで有名なJavaも扱っているので、みんなまとめて学習するのもいいと思います。せっかくFortranを学んだなら、C言語にもチャレンジしてみてくださいね。
Jul 14, 2023 06:07:14 PM
WB 6th Class Textbook Education is the West Bengal state Government Administered Autonomous Examining Authority are Published by English, Bengali Medium Textbooks from Standard 6th Addition, WBBSE Every Year Publish and Distribution WB 6th Class Textbook 2024 West Bengal Std 6th Class Textbook 2024 for High School Students Study Purpose,The Printed WB 6th Class Textbook 2024 are Distributed Through Cooperative Institutions All over Gujarat. Vendors are Linked to the Distribution of Textbooks with Distributors in each District. West Bengal Board Class Book 2024 are easily Accessible to All Students of This System.
Jul 17, 2023 10:48:38 PM
Android Auto est une méthode courante pour connecter votre appareil Android au système d’infodivertissement de votre voiture informations diffusées et accéder à des fonctions telles que la navigation, la musique et la messagerie. meilleur android auto sans fil Alors que de nombreux modèles de voitures plus récents incluent la prise en charge intégrée d’Android Auto, les véhicules plus anciens peuvent ne pas l’être. Les adaptateurs sans fil Android Auto peuvent vous aider.
Jul 18, 2023 07:27:08 PM
Rajasthan 6th Class Syllabus is one of the most Important Tools that help in knowing the Course Description, It gives a Framework for both Students and Teachers, It helps the Students to Develop Efficient Learning Strategies and, also, to Plan their Studies Accordingly, We also Provide Resources Like the RBSE 6th Class new Syllabus 2024 for the Students to Prepare for the Public Exam 2024.We Rajasthan 6th Class Syllabus 2024 are Providing the Complete Details and Rajasthan Board Class Study Material for the Students to get Pass marks in This Final Exam 2024, Here we are Providing the Rajasthan Board 6th Class new Syllabus 2024 for the Upcoming Board Exam, Syllabus of All major Subjects is Arts, Science, Commerce etc.