最近サピックスオープンについても調べ始めました。

 

合格力判定サピックスオープン(9~12月)の平均点のまとめはこんな感じ。sapixのマンスリーや組分けより平均点が若干高いようですね。

 

 

ちなみに得点と偏差値の関係はこんな感じ。

 

 

 

志望校判定SO(4月・6月)はこんな感じ

 

 

Lesson7で関数を扱ったが、関数はreturnで1つの戻り値しか返せない。

よって2つ以上変えたい場合にアドレスや参照を使う手がある。(と解釈した)

 

◆ポインタとアドレス

変数のアドレスはポインタに格納する。

・変数aのアドレスは &a

・変数AのポインタpAの宣言は int* pA

・ポインタに格納されているアドレスに対応する変数を知るには *pA(要はaと同じ)

 

int a;

int* pA;

a=5;

pA =&a;


※2個以上記載する時は int *pA, *pB;

※ポインタには代入が必要。最初に宣言した時に初期値を入れておくと良い

int* pA = &a;

 

◆引数とポインタ・引数と参照

関数内で引数xとyを交換してもそれを戻り値で返すことができなので、xとyをいじるのではなくxとyのポインタを指定して値を交換する。

なお下記の

 void swap(int* pX,int* pY);

 

#include <iostream>
using namespace std;
//swap関数の宣言
 void swap(int* pX,int* pY);
 
 int main()
 {
     int num1 =5;
     int num2 =10;
     cout << "変数num1の値は" << num1 << "です。\n";
     cout << "変数num2の値は" << num2 << "です。\n";
     cout << "変数num1とnum2の値を交換します。\n";
     swap (&num1,&num2);
     cout << "変数num1の値は" << num1 << "です。\n";
     cout << "変数num2の値は" << num2 << "です。\n";
     return 0;     
 }
//swao関数の定義
void swap(int* pX,int* pY)
{

    int tmp;
    tmp = *pX;
    *pX=*pY;
    *pY=tmp;
}

※参照で書くと下記のようになる。

#include <iostream>
using namespace std;
//swap関数の宣言
 void swap(int& x,int& y);
 
 int main()
 {
     int num1 =5;
     int num2 =10;
     cout << "変数num1の値は" << num1 << "です。\n";
     cout << "変数num2の値は" << num2 << "です。\n";
     cout << "変数num1とnum2の値を交換します。\n";
     swap (num1,num2);
     cout << "変数num1の値は" << num1 << "です。\n";
     cout << "変数num2の値は" << num2 << "です。\n";
     return 0;     
 }
//swao関数の定義
 void swap(int& x,int& y)
{
    int tmp;
    tmp = x;
    x=y;
    y=tmp;
}

※実引数を変更したくない時は void swap(const int& x)としておく。constを入れると、その引数の変更ができなくなる。

全統小(全国統一小学生テスト)の結果の見方について、

情報が錯綜してるようなので、僕の聞いてる話をまとめておきます。

 

・今回から内部生は紙の帳票は廃止になりました。結果は6月7日午後以降に、四谷大塚の生徒用マイページで見られるようになります。
※四谷に通ってる子だけでなく早稲アカ、進学くらぶなど、四谷大塚の生徒用マイページを見れる人は全員内部生と同様です。
 
 ・外部生は従来通り、受験校舎で紙の帳票が返却されます。受け取り開始日は受験校舎毎に異なりますが、早い所では6月8日くらいからのようです。
 
・外部生も紙の帳票「君だけの診断レポート」の表紙のQRコードとP2に書かれたパスコードを入力すると、ウェブで成績表を見られます。
 
・内部生には紙のパスワードは配られていません。
 
・既に点数だけは四谷大塚直営校舎や準拠塾の方には届いており、一部校舎では受験者に点数だけ(偏差値・順位無し)伝達したようです。6月6日時点でSNSやブログで点数が出たと言っている人は、この方法で点数を知ったものと思われます。あくまで一部の校舎がサービスでやったことと思われるので、教えてもらってない人は電話とかで聞いても教えてもらえないと思います、というか迷惑になるので控えましょう
 
過去の平均点と偏差値の予想はこちら↓
 

関数の回。再帰関数の話は今回はなし。

 

◆戻り値の無い関数の書き方

//buy関数の定義

void buy(int x)

{

 cout << x <<"万円の車を買いました\n";

}

 

//buy関数の利用

int main()

{

 buy(20);

 return 0;

}

 

※buyの中の20がbuy関数に渡される

 

引数2個も可能 void buy(int x, int y)

引数無しも可能 void buy()

 

◆戻り値のある関数の書き方
//buy関数の定義
int buy(int x)
{
 cout << x <<"万円の車を買いました\n";
 return x;
}
//buy関数の利用
int main()
{
 int sum = buy(20);
 return 0;
}

 

※returnで戻り値を返す

 

インライン関数を使うと処理が早くなることがある

 

◆関数プロトタイプ宣言

関数の呼び出しを先に行って後から関数を定義する場合、

関数の宣言→呼び出し→定義の順に書く必要がある。

デフォルト引数を設定しておくと、引数が指定されてない時にそれを使って計算する。

void buy(int x=10);

但し引数が複数ある場合、1つ引数を指定したらそれより右は全て引数が必要になる。

 

◆関数のオーバーロード

int max(int x, int y)

double max(double x, double y)

引数の方や数が違っていれば、同じ名前の関数を複数定義できることを利用して、複数の場合に対応できる

 

◆関数テンプレート

扱う型だけが異なる関数をひながたから作成

template <class T>

T maxt(T x, T y)

 if(x>y)

  return x;

 else

  return y;

}

 

コンパイルの際に「T」の部分を指定した型(int,doubleなど)に置き換えた関数が作成される。