C言語メモ(設定編)

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

C言語のエディタで、Visual Studio Codeを入れたのですが、字が小さくて、老眼が入っている身にはシンドイとおもっていました。
どこでズーム出来るんだろうと悩んでいた所、左下の歯車マークをクリックして、
Setting、Commonly Usedの真ん中へんでFont Sizeの所を20にした所、老眼でも読める様になりました( ;∀;)

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

C言語メモ(エラー編)

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

C言語を始めて早速エラーのお祭りが到来しましたので、それを書き留めておこうと思います。

エディタ、コンパイラ、パスを通すといった設定を終えて初めてのhello world。
しかしdirコマンドでファイルはあるのに何故かコンパイラする時にエラーになってしまう…。
ファイルが無い?無いはずないじゃん( ;∀;)と思って、パスを通すのが出来て無かったのかも…。などと悩んでいたら、

は!!
英語力!!
の問題でした。

皆さん、間違い探しです。

Hello World
Hallo World

そりゃ、ファイルも無い訳だ。

C言語と言えば#include
これも間違い探しです。

#include <stdio.h>
#include <studio.h>

あとは、IF文の文法ミス。
もしもフラグが1の時
if(flg==1){
処理
}
とすべきところを
if(flg=1){
処理
}
としてしまいました。
なんでflgが2の時の処理が出来ないの!!って、そりゃそうだ。

代入じゃん!!
これじゃあ永遠に2の時の処理にならないって。

この記事では私がやらかした、マヌケなエラーについて書き留めます。

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

プログラマこそストレッチ!(子ども向けと大人向け)

メインメニューへ
これからプログラミングをはじめる方へ
プログラミングと資格
息抜きに(=^・^=)写真で癒し
自己紹介

2020年にプログラミング教育が始まってからますます大人も子供もプログラミングに熱中なのは良い事ですが、その一方で、座りっぱなしになり、腰に負担をかけてしまうこともあります。
今日は整体に行ってきました。そこでストレッチの話が出たので、YouTube動画を探して見ました。

私はラジオは東京FMを聴いていて、スイッチマンこと青山剛さんという方のことを知って、子ども向けのストレッチをやってみました。
背が伸びて足が速くなって頭も良くなるので、このストレッチをやったらキミは女の子にモテモテになるかも!?

主にこの2つの動画をやっています。

あと、今年のお盆休みに私はぎっくり腰をやってしまいました。そこで吉田先生という方のnoteと動画を見ています。

皆さま長時間座りっぱなしだと思うので、タイマーを付けて時々ストレッチやってみてください。
ぎっくり腰にはお気を付けて、快適にプログラミングを楽しんで下さい。
発達障害の過集中とも相まって座りっぱなしになりそうなので記事にしました。

メインメニューへ
これからプログラミングをはじめる方へ
プログラミングと資格
息抜きに(=^・^=)写真で癒し
自己紹介

C言語コロナ詐欺師をループでやっつけろ!!

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

新型コロナに便乗した詐欺師が各地で多発しています。
金銭や個人情報を盗み出したり、なんでそんな詐欺をするような人間がのうのうと生きているのかと思うと、非常に腹立たしいです。
警視庁のホームページです。
そこで、何かできないかと思い、C言語のループを使って詐欺師をやっつけることにしました。

詐欺師の最初のHPは300です。
それで、プレイヤーの勇者は武器を2つのうちから選んで攻撃します。
詐欺師のHPが半減した所で詐欺師は瀕死になりますが、プレイヤーもお腹がすきます。
2つの食べ物から好きなものを選んで攻撃力をUPさせ、一気に詐欺師をやっつけます。

最初はwhileループで、最後はforループを使います。
プレイヤーの選択によって展開が変わるのでIF文、それにループだけの単純なプログラムになっています。

では、さっそく実行して見ます。

武器に「2.うんこ」を選びます。うんこの攻撃力は40です。


詐欺師のHPが40ずつ減っていきます。
半減した所で、勇者もお腹がすきます。
勇者は食事を選びます。

勇者は「もしもバーガー」を食べます。
すると攻撃力が50にパワーアップします。
今度は瀕死の詐欺師に50ずつダメージを与えます。

それで最後に詐欺師をやっつけて、世界を救いました。

では、もう一つのパターンも試してみます。

勇者は「バズーカ砲」を選びます。攻撃力は20です。
勇者は「ばななっとうパン」を食べて攻撃力を75にアップさせて詐欺師をやっつけて世界を救いました。

このプログラミングみたいに詐欺師もやっつけられたらなぁ・・・。

では、プログラミングになります。

#include
int main(){
int SAGI_hp; //詐欺師の体力
int attack; //プレイヤーの攻撃力
int powerup; //プレイヤーの回復後の攻撃力
int weapon_no; //武器の番号
char *weapon; //武器の名称
int food_no; //食べ物の番号
char *food; //食べ物
printf(“武器は何を使いますか?—> 1:バズーカ砲 2:うんこ\n”);
scanf(“%d”,&weapon_no);
if(weapon_no==1){
weapon=”バズーカ砲”;
attack=20;
}else{
weapon=”うんこ”;
attack=40;
}
printf(“勇者は詐欺師に%sで攻撃した!!攻撃力は%d\n”,weapon,attack);
SAGI_hp=300;
while(SAGI_hp>=150){
printf(“詐欺師の残りHP=%d\n”,SAGI_hp);
printf(“勇者は詐欺師に%dのダメージを与えた‼\n”,attack);
SAGI_hp-=attack;
}
printf(“詐欺師は瀕死です!!でも勇者も腹が減ったのでちょっと休む\n\n”);
printf(“何食べる??—> 1:もしもバーガー 2:ばななっとうパン\n”);
scanf(“%d”,&food_no);
if(food_no==1){
food=”もしもバーガー”;
powerup=50;
}else{
food=”ばななっとうパン”;
powerup=75;
}
printf(“勇者は%sを食べて攻撃力が%dにパワーアップした‼\n\n”,food,powerup);
for(SAGI_hp=150;SAGI_hp>0;SAGI_hp-=powerup){
printf(“詐欺師の残りHP=%d\n”,SAGI_hp);
printf(“勇者は詐欺師に%dのダメージを与えた!!\n”,powerup);
}
printf(“勇者は詐欺師をやっつた‼世界が平和になった!!\n”);
}

コンピュータとC言語はコチラの本で学んでいます。

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

C言語バカボンのパパで「反対」の「反対」は「賛成」なのだ掛け算

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

赤塚不二夫先生の有名なマンガ「天才バカボン」のバカボンのパパは、
といえば、「反対の反対は賛成なのだ!」が名セリフだと思います。

老子についてバカボンのパパと一緒に学ぶ本と、
C言語について面白くてワクワクする本を紹介します。


バカボンを懐かしむ人と言えば40歳以上??30歳以上でしょうか。
結構年配になってからプログラミングを始めたいという方には、面白い例題かもしれません。

そこで、簡単な掛け算でバカボンのパパの名セリフを再現したいと思います。
プラスは「賛成」、マイナスは「反対」として、マイナス×マイナスは「反対」の「反対」だから「賛成」になるはずです。

では実行して見ます。

最初の数に-3、次の数に-5を入れます。
かけるとプラス15になりますので、反対の反対は賛成になりました。

賛成、反対の判定はIF文を使って、フラグとしてflg1~flg3に文字を入れました。
この文字列が文字化けしたり、どうしたらよいのか分からず色々しらべて、
やっと表示されました。

プログラムはこちらになります。

#include
int main(){
int kazu1; //最初の数
int kazu2; //次の数
int kekka; //計算結果
char *flg1;
char *flg2;
char flg3;


printf(“最初の数を入力=”);//キー入力
scanf(“%d”,&kazu1);
if(kazu1>=0){ flg1=”賛成”;
}else{ flg1=”反対”;
}
printf(“最初の数%dは「%s」なのだ!\n”,kazu1,flg1);

printf(“次のの数を入力=”);//キー入力
scanf(“%d”,&kazu2);
if(kazu2>=0){
flg2=”賛成”; }else{ flg2=”反対”
; }
printf(“次の数%dは「%s」なのだ!\n”,kazu2,flg2);

kekka=kazu1kazu2;
if(kekka>=0){
flg3=”賛成”;
}else{
flg3=”反対”;
}
printf(“計算結果%dは「%s」の\n「%s」は「%s」なのだ!\n”,kekka,flg1,flg2,flg3);
}

お疲れ様でした。

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

C言語で簡単な足し算。イヤナヤツ+イヤナヤツ?

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

「トリビアの泉」という番組がその昔ありました。
そこで、学生さんからこのようなトリビアが届きました。

イヤナヤツ+イヤナヤツ=ミナゴロシ

どういうことかと申しますと、

18782+18782=37564

となるそうです。
それを早速C言語で作ってみました。

足し算に使う数の変数を2つ、計算結果を入れる変数を1つ用意します。

kazu1に3、kazu2に5で足し算をすると、計算結果のkekkaに8と入るようにします。

ちゃんと計算が出来ることを確認出来たので、今度はkazu1、kazu2にイヤナヤツの18782を入れて計算します。

そうするとこうなりました。


ではプログラムです。

#include
int main(){
int kazu1; //最初の数
int kazu2; //次の数
int kekka; //計算結果
printf(“最初の数を入力=”);//キー入力
scanf(“%d”,&kazu1);
printf(“次のの数を入力=”);//キー入力
scanf(“%d”,&kazu2);
kekka=kazu1+kazu2;
printf(“計算結果は%dです。”,kekka);
}

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

C言語の設定からHello Worldまで(Windows10)

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

C言語なるほど実験室という本を読んでいて、基本情報技術者試験の合格という目標と、パソコンのことをもっと知りたいという欲求が芽生え、
C言語をはじめることにしました。

まず環境設定ですが、

1、エディタ
2、コンパイラ
3、パスを通す

この3つのステップで見ていきます。
タイトルにあるように、Windowsでの設定です。

1、エディタ
エディタとはアメブロとかやったことある人は感覚的に分かると思うのですが、文章を編集するものです。
大雑把に書くと、C言語でのプログラムを書くのに使うソフトです。
初めてですので、visual-studio-codeというエディタをダウンロードしました。

2、コンパイラ
次にC言語をパソコンが分かる言葉に翻訳するコンパイラを入れます。
コンパイラとは何かについては、こちらのページが分かりやすいです。
MSYS2というコンパイラを入れました。
コマンドを幾つか打つので、その方法がこちらのページの手順に沿って行いました。

もし環境設定後このような豆電球マークの#includeの所の波線が出て来て、こういうふうになったら、こちらのコマンド(ベストアンサーの方の「mingw をインストールするには…」)も入れて再起動してパスを通してまた再起動すると治るかも知れません。「かも」しれません。ですが…。

3、パス(Path)を通す
最後にパスを通します。パスを通すとは何かは、こちらのページが分かりやすいです。
設定方法は、こちらの手順に従います。
このブログの例ですと、エクスプローラーで、「Cドライブ→msys64→mingw64→bin」へと参照して辿って指定します。
その後、この部分をコピーして貼り付けます。

パスがなかなか通らなくて約2日設定にかかりました。
なので、この記事をご覧のあなたが1秒でも早く設定ができるように、私が理解したことをお伝えさせて頂きます。
パスを通すとはどこのフォルダを環境変数の所から貼り付けるのか、ということで迷いました。それを理解するのがコンパイラの「gcc.exe」が入っている場所をパスに追加するのだ、っていうことだったと判明しました。

パスはこのように追加しました。

再起動は終了しましたでしょうか…。

これで役者が揃いました。
それではエディタで以下のプログラミングをしています。
お約束の「hello world」です。

Cドライブの下に、私は猫が好きなので、「catstudy」というフォルダを作って、そこに下記の
プログラムを保存しました。

#include <stdio.h>
int main(void){
printf(“hello world”);
}

※そんなの知っている!!かもしれませんが、””は半角です。

ファイル名は「hello.c」と保存しました。

次にコンパイラに切り替えて、フォルダを移動します。
「cd c:\catstudy」

フォルダ「catstudy」に移動します。
それからさっきのプログラムが保存されているのか確認するために、
「dir」と入力します。

「hello.c」がありました。
次に、コンパイルします。
「gcc hello.c -o hello」と入力します。

再び「dir」で確認すると、「hello.exe」が出来ていることを確認出来ます。
これがコンパイルされたファイルなので、これを実行します。

「./hello.exe」と実行すると、hello worldが出ました!!
やったね!!

日本語も試してみます。さっきのプログラムのhello worldの所を「猫★シエスタ」にしてみます。

これで安心して眠れます。
おやす三毛猫(=^・^=)

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

基本情報技術者試験午後対策使用教材の紹介

メインメニューへ
基本情報技術者試験トップへ
これからプログラミングをはじめる方へ
プログラミングと資格
自己紹介

この記事を書いている令和2年9月20日現在、基本情報技術者試験(FE)は2度も中止や延期があって、1受験者である私のペースが乱れがちです。
そこで、一旦自分のアタマを整理するために、使っている参考書について書くことにしました。それによって乱れたペースから回復してモチベUPすることが私の目的です。

試験まで妙に間が空いてしまったので片付けをしていたら、今年のお正月に解いていて難しくて放り投げてしまった本を発見しました。

こちらです。アイテックの派手なオレンジですね(笑)それで、お正月に挫折したこの本を、9月に入った私が再び解いてみたら、解けない問題もありますけれど、解ける問題もいくつかありましたので、若干力がついて来たようです。
この本は、午後対策の本で、午後問題に関連した午前問題も学べます。私は午後が苦手なので、この本を中心に頑張ります。

その他の使用教材を紹介します。

アルゴリズムがこの2冊

独習ゼミの人気No.1講師の矢沢久雄が書かれた本です。
トレースってどうやるの?という疑問から私の勉強が始まったのですが、
この本でコツコツトレースをしていたら少しずつ力が付いてきました。

こちらも矢沢先生の本です。基本情報技術者試験のシラバスにあるアルゴリズムと
対応してあり、実際にJavaもしくはC言語で作ってトレースをしていきます。
プログラミング→トレース→トレースのコードを追加という学習順序で理解が深まります。

それと必須問題であるセキュリティですが、セキュリティ白書2020を購入しました。

セキュリティの最新情報を文章にグラフ、イラストもあって、白書と言うともっと堅苦しいイメージを持って想像していたのですが、オールカラーで見やすいです。

SQLはこの本を使っています。

SQLもですが、実際に手を動かすと特にグループ化の混乱がだいぶ減って来ます。
エディターなどの環境の用意の仕方も書かれています。
私は特にチャプター3が肝だと思います。
SQLの解釈する順序が、何を見ても分からなかったのですが、この本で氷解しました。

言語はCASL2を選択して、この2冊を使っています。

実際にシミュレーターで手を動かすのが最短だと思うので、こちらのシミュレーターを使っています。

教材に時間もお金も費やす一方で、私は服とかカバンとか、持ち物はダッサイ物を使って節約しています。ユニクロで揃えています。ユニクロがダサいんじゃなくて、私がダサいのと、ホームセンターで購入したジャージも合わせてきているので、ファッションはダメダメです。
話を基本情報技術者試験の午後に戻します。

午後問題と言えば、本当に問題が長いですよね。私は本を読むのが超遅いので、問題文を読み切れないうちに時間がどんどん過ぎていき、困っています。
講座はスタディングと独習ゼミを利用しました。この資格に関してはどちらも本当に丁寧な講座だと思いますが、さすがに本を読むのが遅すぎると、読解力でつまずきがちです。なので、読解力に関してはユーキャンの速読講座を利用しています。午後問題は読解力と頭脳の良さという私の弱点を突いてきます。なので、速読と頭脳を鍛えるために日々トレーニングをしています。

メインメニューへ
基本情報技術者試験トップへ
これからプログラミングをはじめる方へ
プログラミングと資格
自己紹介

プログラミング学習で関わってはいけない人達と逃げるべき環境

メインメニューに戻る
取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ!!
基本情報技術者試験トップへ
風呂グラミング(入浴剤紹介)
自己紹介
アロマでゴキブリを追い出せ!!

■関連記事■
これからプログラミングをはじめる方へ
保護者の方へ。子ども(小学生向け)プログラミングの予習
プログラミング学習で関わってはいけない人達と逃げるべき環境
プログラミングと資格について  

ちょっと過激なタイトルになってしまいましたが、「あなたのやる気を奪う人や環境」からは逃げて欲しいと思います。
やる気が無くなるポイントというのは1人ずつ異なりますので、私の場合について書きます。共通するところもあればあまり共感出来ない部分もあるかも知れません。全部共感出来ないという場合は、多分私こそがあなたにとって避けるべき人物になります。


●否定しまくる人
「有言実行」という言葉がありますよね。私は自分の目標をSNSで言ってモチベーションを上げるタイプです。しかし「不言実行」で、達成するまで言わない人も当然いらっしゃいます。どっちがいいとかではなく、その人によって、同じ人でも状況によって異なるので、「それは間違っている!!、不言実行こそが正しい!!」とか、私はあまり、言われたくないです。出来ればそっとしておいて欲しいですし、遠くから「頑張ってね~~~」と気楽に見守ってもらえると私は嬉しいです。

●束縛する人
上記の項目と重複するかもしれませんが、プログラミングでも楽器でも、語学でも、効率的な方法というのは、その人によって異なります。
そのカギを握っているのは「好奇心」です。
自分がワクワクする勉強をどんどん取り入れることが継続する方法だと私は個人的に思っています。(良い悪いは別として)
勿論効率重視でやって行けば上達は早いでしょう。
しかし、いくら効率が良くても、楽しく無かったら続きませんよね。
なので、自分が納得いく方法を模索しながらやって行きたいです。
言語は 1つずつやるべきと思う方はその方法を、更に計画立てて2021年の何月まではこれ、と決めたい方はその方法を、私のように本能の赴くままにやりたい方はそれを、
先人のアドバイスから自分に合いそうな所を取り入れて、納得いく方法で自由にやりたいです。あなたは自由です。好きなように、自分が楽しくなるようにやって欲しいと思います。私もそうします。

●まとめ
人のすることに否定や、束縛なんてしても何のメリットも無いですし、無意味だと思っていますが、何故そのようなことをする人がいるんだろう、と考えた所、おぼろげに見えてきました。彼らは私から自立心を奪い、依存させ、不安にさせ、その不安を煽り、情報商材を買わせようとしているのかなって思いました。
なので「これはアドバイス」、「これは保留」、「これはクソバイス」と断捨離の時の分類のように自分で分けて自分を大事にして勉強を進めていきたいです。

あなたの脳がもっと冴える8つの脳タイプ
著:加藤俊徳
この記事を書くのに参考にした、脳の専門家の先生の本です。

■関連記事■
これからプログラミングをはじめる方へ
プログラミング学習で関わってはいけない人達と逃げるべき環境
プログラミングと資格について  

メインメニューに戻る
基本情報技術者試験トップへ
風呂グラミング(入浴剤紹介)
自己紹介
アロマでゴキブリを追い出せ!!

アルゴリズム無料教材

メインメニューに戻る  資格トップへ
これからプログラミングをはじめる方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)
アロマでゴキブリを追い出せ!!

無料教材の中で、凄く助かっている教材を主に3つ紹介します。
高品質な教材をタダで使わせて頂いているので、情報提供者の方々に感謝しつつ、合格を掴み取る為にどん欲に使用しています。

過去問の勉強は、基本情報技術者試験ドットコムを使っています。かなり有名なサイトですね。そこの解答解説で、まだ解説が無い分のアルゴリズム問題については、福嶋先生のふっくゼミの公開動画で学んでいます。こちらは視聴者の制限なく、誰でも視聴できます。

次に、独習ゼミの人気講師の矢沢久雄先生が書かれた連載を紹介します。
受験ナビの記事はどなたでも閲覧できます。
過去問を短く編集してアルゴリズムの試験試験に慣れる問題です。
配列を分割するプログラム(マージソート)

この連載の中から、具体例からヒントを掴む練習問題の、
私がトレースしたノートを公開します。
私は令和2年10月18日に初受験する者です。
まだ勉強中ですが、古い昭和の人間なので、
「勉強は恥をかいて覚えるもの」という認識があります。
その為、1受験生の書いた、汚いノートを公開します。

※お前のノートのせいで落ちたという苦情は受け付けません。
自己責任でご利用ください(=^・^=)

この猫くんは、What’s Michael?(ホワッツマイケル)という
猫マンガの主人公、都合が悪くなると踊ってごまかす猫のマイケルです。
基本情報技術者試験とは関係ないのですが、息抜きに猫を書きました。

基本的には矢沢先生の教材を使っていますが、他の先生方の教材で、今の自分の状況に合うものがあれば、貪欲に取り入れて学んでいます。

こちらはおススメの参考書です。

◆アルゴリズム問題がちゃんと解ける本
アルゴリズム学習の定番。
アルゴリズムが苦手で何とかしたい方におススメ

◆アルゴリズムはじめの一歩完全攻略
実際に作って学べます。
JavaとC言語を使っています。
私はJavaもCも初めてでしたが、
それでも、ハッシュ関数の所までは、
どうにかついていけました。
もっと頑張ります。

◆C言語なるほど実験室
これからの基本情報技術者試験の対策に必要になりそうなので、使っています。

メインメニューに戻る  資格トップへ
これからプログラミングをはじめる方へ
プログラミングと資格
息抜きに、写真で癒し(=^・^=)
アロマでゴキブリを追い出せ!!