2016年6月12日日曜日

ヒトには時間でしか癒せない痛みがある


先日28歳になりました。この世に生を受けて10000日ちょっと。


昔想像してた28歳よりも、幼く、未熟だけど、
健康で大きな悩みもなく、生活できていると思います。

こういう節目だと、いつもどう生きていこうかな、とか考えてしまうけど、
シンプルに、これからも自分の納得のために生きていきたいと思う。

こだわりこそが人生の彩りだとも思う。


ああ、人生で一度はオーロラを観たいなあ。

Boards of Canada - Macquarie Ridge (Aurora Borealis, Northern Lights) HD...







2016年5月14日土曜日

Marble Mountain, a themed marble machine

[tips]Google Chromeを常にシークレットモードで起動する

Google Chromeを常にシークレットモードで起動する

Windows8
  1. デスクトップのショートカットやスタートメニュー>すべてのプログラムにあるChromeアイコンを右クリック。
  2. 右クリックメニューからプロパティを選択。
  3. Google Chromeのプロパティ起動後、ショートカットタブのリンク先の項目の語尾に--incognitoオプションを追加。こんな感じ→"~\chrome.exe" --incognito
  4. 適用、OKをクリック。
  5. これでChromeアイコンからChromeを起動するとシークレットモードで起動する。

2016年4月27日水曜日

The circle of life.


20代までは、若さと外見の小奇麗さがあれば、押し切れる時代。
30代からは、人生のテーマとどんな風に時間を過ごしているかが外見に出てくる時代。

したがって、年老いても美しいひとは昔から容姿が整っていたのではなく、
長い年月、充実した時間を過ごしてきた証明。

2016年4月4日月曜日

C言語:ファイルの入出力

問題1
下記の条件で、5人分キーボードから入力し、
それをディスク上にファイルとして生成するプログラムを作成。
・受験番号(4ケタ)
・性別(男:M、女:F)
・氏名(20ケタ以内、姓と名の間を"-"でつなぐ)

問題2
問題1で生成したファイルを読み込み、まず性別で分け、
その中を氏名順でソートするプログラムを作成。

問題1のプログラム
struct exam{
  int no;
  char sex;
  char first[10];
  char last[10];
};

int main(void){
  FILE *fp;
  int i;
  struct exam member[10];
  for(i=0;i<5 i="" p="">    printf("%d番目の受験番号を入力してください:",i+1);
    scanf("%d", &member[i].no );
    printf("%d番目の性別を入力してください M/F:",i+1);
    scanf(" %[MF]", &member[i].sex );
    printf("%d番目のファーストネームを入力してください:",i+1);
    scanf("%s", member[i].first );
    printf("%d番目のラストネームを入力してください:",i+1);
    scanf("%s", member[i].last );
  }
   fp = fopen("test.txt","a");
   for(i =0;i<5 i="" p="">        printf("受験番号:%d\n性別:%c\n氏名:%s-%s\n",member[i].no, member[i].sex, member[i].first,member[i].last);
        fprintf(fp,"%d %c %s-%s\n",member[i].no, member[i].sex, member[i].first,member[i].last);
    }
   fclose(fp);
   printf("test.txtに出力完了\n");

  return 0;
}


問題2のプログラム
typedef struct {
  int no;
  char sex[5];
  char name[20];
} exam;
int main(void){
  FILE *fp;
  int  i,j,s=0,t=0;
  exam member[10];
  exam male[10],female[10],x[1],y[1];
  fp = fopen("test.txt","r");
  // ファイルの終端まで文字列を読み取り表示
  for(i=0;i<5 div="" i="">
      if(fscanf(fp,"%d %s %s\n" ,&member[i].no,member[i].sex, member[i].name ) != 3 ) break;
  }
  fclose(fp);
  //性別ごとに分類
  printf( "女性だけ表示\n");
  for (i=0;i<5 div="" i="">
    if(strcmp(member[i].sex,"M")){
     female[t].no = member[i].no;
     strcpy(female[t].sex,member[i].sex);
     strcpy(female[t].name,member[i].name);
     printf( "%d %s %s\n", female[t].no, female[t].sex, female[t].name);
     t++;
    }
  }
  printf( "男性だけ表示\n");
  for (i=0;i<5 div="" i="">
    if(strcmp(member[i].sex,"F")){
     male[s].no = member[i].no;
     strcpy(male[s].sex,member[i].sex);
     strcpy(male[s].name,member[i].name);
     printf( "%d %s %s\n", male[s].no, male[s].sex, male[s].name);
     s++;
   }
  }
  //女性の並べ替え
  for(i=0;i
    for(j=0;j
      if (strcmp(female[j].name,female[j+1].name) > 0) {
         y[1] = female[j];
         female[j] = female[j+1];
         female[j+1] = y[1];
      }
    }
  }
  printf( "女性を氏名順に並び替え\n");
  for(i=0;i
     printf( "%d %s %s\n",  female[i].no, female[i].sex, female[i].name);
  //男性の並べ替え
  for(i=0;i
    for(j=0;j
      if (strcmp(male[j].name,male[j+1].name) > 0) {
         x[1] = male[j];
         male[j] = male[j+1];
         male[j+1] = x[1];
      }
    }
  }
  printf( "男性を氏名順に並び替え\n");
  for(i=0;i
     printf( "%d %s %s\n",  male[i].no, male[i].sex, male[i].name);
  return 0;
  }

2016年2月26日金曜日

C言語:構造体

問題1
受験番号(4桁)と氏名(20文字以内)を5人分入力し、番号順とアルファベット順の
2種類のリストを出力するプログラムを、構造体を用いて作成。

問題2
下記の作家は「このマンガがすごい!オトコ編」と「マンガ大賞」の受賞者で、数字は受賞年を表す。
これを構造体を用いて表し、賞別、受賞年順にソーティングするプログラムを作成。
一番右の"K"、"M"はそれぞれ"このマンガがすごい!"、"マンガ大賞"を示す。

Koyama    - Chuya        2009    M
Murata    - Yusuke       2014    M
Sasuga    - Yu           2013    K
Umino     - Chika        2011    M
Ooima     - Yoshitoki    2015    K
Suetsugu  - Yuki         2010    M
Matsui    - Yusei        2015    K
Yoshimoto - Koji         2012    K

問題1のプログラム
struct exam{
  int no;
  char name[20];
};

int main(void)
{
  int i,j;
  struct exam member[10];
  for(i=0;i<5 d="" for="" i="0;i<5;i++)" j="4;j" member="" name="" no="" printf="" s="" scanf="">i;j--) {
        if (member[j-1].no>member[j].no)
           {
            member[6] = member[j];
            member[j] = member[j-1];
            member[j-1]= member[6];
           }
      }
  }
        printf("番号順にソート\n");
  for(i =0;i<5 d="" for="" i="0;i<5;i++)" j="4;j" member="" n="" name="" no="" printf="" s="">i;j--) {
        if(strcmp(member[j-1].name,member[j].name)>0)
           {
            member[6] = member[j];
            member[j] = member[j-1];
            member[j-1]= member[6];
           }
      }
   }
        printf("アルファベット順にソート\n");
   for(i =0;i<5 0="" d="" i="" member="" n="" name="" no="" pre="" printf="" return="" s="">
        printf("受験番号:%d 氏名:%s\n",member[i].no, member[i].name);
    }
  return 0;
}

問題2のプログラム
struct exam{
  int no;
  char name[20];
};

int main(void)
{
  int i,j;
  struct exam member[10];
  for(i=0;i<5 d="" for="" i="0;i<5;i++)" j="4;j" member="" name="" no="" printf="" s="" scanf="">i;j--) {
        if (member[j-1].no>member[j].no)
           {
            member[6] = member[j];
            member[j] = member[j-1];
            member[j-1]= member[6];
           }
      }
  }
        printf("番号順にソート\n");
  for(i =0;i<5 d="" for="" i="0;i<5;i++)" j="4;j" member="" n="" name="" no="" printf="" s="">i;j--) {
        if(strcmp(member[j-1].name,member[j].name)>0)
           {
            member[6] = member[j];
            member[j] = member[j-1];
            member[j-1]= member[6];
           }
      }
   }
        printf("アルファベット順にソート\n");
   for(i =0;i<5 0="" 13_2.c="" cat="" d="" i="" include="" iwakami="" kadai13="" localhost="" master="" member="" n="" name="" no="" printf="" return="" s="" stdio.h="">

struct manga {
        char name[30];
        int year;
        char award;
};

int main(void)
{
        int i,j;
        struct manga member[10] = {
          {"Koyama    - Chuya    ", 2009, 'M'},
          {"Murata    - Yusuke   ", 2014, 'M'},
          {"Sasuga    - Yu       ", 2013, 'K'},
          {"Umino     - Chika    ", 2011, 'M'},
          {"Ooima     - Yoshitoki", 2015, 'K'},
          {"Suetsugu  - Yuki     ", 2010, 'M'},
          {"Matsui    - Yusei    ", 2015, 'K'},
          {"Yoshimoto - Koji     ", 2012, 'K'},
        };
               printf("構造体を用いて表示\n");
        for(i = 0; i < 8; i++) {
                printf("%s %d %c\n",member[i].name, member[i].year, member[i].award);
        }

        //賞別にソート
        for (i=0;i<8 for="" i="" j="7;j">i;j--) {
               if (member[j-1].award > member[j].award)
                  {
                   member[9] = member[j];
                   member[j] = member[j-1];
                   member[j-1]= member[9];
                  }
             }
         }
     //賞ごとに受賞年順をソート
        for (i=0;i<8;i++) {
           for (j=7;j>i;j--) {
               if ((member[j-1].year > member[j].year)&&(member[j-1].award==member[j].award))
                  {
                   member[9] = member[j];
                   member[j] = member[j-1];
                   member[j-1]= member[9];
                  }
             }
         }
               printf("賞別、受賞年順にソート\n");
         for(i =0;i<8;i++) {
               printf("%s %d %c\n",member[i].name, member[i].year, member[i].award);
           }
return 0;
}

2016年2月3日水曜日

C言語:関数


問題1.
キーボードから正の整数を1つ入力し、それが偶数か奇数かを判断し、偶数なら
    "今入力した整数~は偶数である"
と出力し、奇数の場合も同じように出力するプログラムを関数を用いて作成。
偶数・奇数の判断は関数で行い、入出力はmainで行う。

問題2.
下記のプログラムの*で囲った部分を関数とするプログラムに書き換え。
[プログラム説明]
1~100までの間のすべての素数を求めるプログラム
#define MAX_LENGTH 100
int main(){
    int a[MAX_LENGTH+1], i, n, k;

    for(i=0; i<=MAX_LENGTH; i++)
        a[i] = i;

    n = sqrt(100.0);
*************************************************
    for(k=2; k<=n; k++){
        if(a[k] == 0)
            continue;
        for(i=k*2; i<=MAX_LENGTH; i=i+k)
            a[i] = 0;
    }
*************************************************
    printf("1から100までの素数は以下の通り\n");

    for(i=1; i<=MAX_LENGTH; i++)
        if(a[i] != 0)

    printf("%d ", a[i]);
    printf("\n");
}

問題1のプログラム
int g(int),k(int);
int main(void){
  int x;
  printf("正の整数を入力してください。:");
  scanf("%d",&x);
  g(x);k(x);
  return 0;
}

int g(int s){
  if(s%2==0){
    printf("今入力した整数%dは偶数である。\n",s);
  }
}

int k(int t){
  if(t%2!=0){
    printf("今入力した整数%dは奇数である。\n",t);
  }
}

問題2のプログラム
#define MAX_LENGTH 100

int a[MAX_LENGTH+1], i, n, k;
int prime_num(int);
int main(){
    for(i=0; i<=MAX_LENGTH; i++)
        a[i] = i;

    n = sqrt(100.0);
    prime_num(n);
    printf("1から100までの素数は以下の通り\n");
    for(i=1; i<=MAX_LENGTH; i++)
        if(a[i] != 0)
    printf("%d ", a[i]);
    printf("\n");
}

int prime_num(int x)
{   for(k=2; k<=x; k++){
        if(a[k] == 0)
            continue;
        for(i=k*2; i<=MAX_LENGTH; i=i+k)
            a[i] = 0;
    }
}