第8講 関数の学習その2  
第8話 引数の名称
初心者
に変更して入門と同様な結果を出しましょう。
解答コード例
#include<iostream>
using namespace std;
using namespace System;
int f(int x);
int main(){
int x,y;
cout<<"f(x)=2*x*x*x-3*x*x+4*x-5"<<endl;
for(x=1;x<21;x++){
   if(x<10)cout<<"x="<<x<<"のとき、 ";
   if(x>=10)cout<<"x="<<x<<"のとき、 ";
   y=f(x);
   cout<<"f(x)="<<y<<endl;
   }
}
int f(int x){
   return(2*x*x*x-3*x*x+4*x-5);
}
コンソール画面
入門

ところで、今のコードを次のように変更したら、おかしなことになってしまうでしょうか。
#include<iostream>
using namespace std;
using namespace System;
int f(int a);
int main(){
int x,y;
cout<<"f(x)=2*x*x*x-3*x*x+4*x-5"<<endl;
for(x=1;x<21;x++){
   if(x<10)cout<<"x="<<x<<"のとき、 ";
   if(x>=10)cout<<"x="<<x<<"のとき、 ";
   y=f(x);
   cout<<"f(x)="<<y<<endl;
   }
}
int f(int a){
   return(2*a*a*a-3*a*a+4*a-5);
}
実行結果
C言語
なんと結果は同じです。
さらに、次のようにコードを変更しても
#include<iostream>
using namespace std;
using namespace System;
int f(int p);
int main(){
int x,y;
cout<<"f(x)=2*x*x*x-3*x*x+4*x-5"<<endl;
for(x=1;x<21;x++){
   if(x<10)cout<<"x="<<x<<"のとき、 ";
   if(x>=10)cout<<"x="<<x<<"のとき、 ";
   y=f(x);
   cout<<"f(x)="<<y<<endl;
   }
}
int f(int a){
   return(2*a*a*a-3*a*a+4*a-5);
}
基礎
実行結果は同じです。

実は、呼び出し側の引数名と呼び出される側の引き数名は、
同じでも異なっていてもどちらでよいのです。
初心者
ただし、呼び出された側の引数名と関数の中で使われる引き数名は同じでなければなりません。
基礎
要するに、値を渡す側と受け取る側の名前は異なっていてもよいのです。
したがって、関数を分業して開発している場合、
渡す側の開発者と受け取る側の開発者が、引き数名でいちいち話し合わなくてもよいのです。
それぞれがそれそれの名称で、プログラムを考えればよいのです。

第7話へ 第9話へ


戻る


VB講義へ
VB講義基礎へ

vc++講義へ第1部へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)