• 締切済み

基本情報者の午後問題擬似言語

こんにちわ~ 半年くらいかなぁ過去問題ばかり擬似言語勉強しても、 ちっとも安定した答えがでません。 いちお、C言語はなんとか5割ないし4割はキープできてると思うのですが。 質問したのはなぜかと言いますと、「みなさんは試験のとき擬似言語の問題はちゃんとトレースしてほぼ安定して答えをだすのか?」というのをきになりまして質問しました。おおざっぱに1周トレースはするのですが、変数の ありがちなIDXがSIDX等に変化するのをまじまじと約していくと時間ないですよね?どうでしょうか?時間ない上に今度は配列の図でも書いちゃおうかなぁなんて時間ないですよね?みなさんはどうしてるんでしょうか。

みんなの回答

  • taro5088
  • ベストアンサー率78% (15/19)
回答No.1

基本情報で、擬似言語とプログラム言語は最大の 難関ですよね。 擬似言語には、個人の得意不得意、プログラムを読む ことへの慣れ、アルゴリズムに対する知識などが関わ ってくると思います。  私は、その分野への対策としてアルゴリズム用の問 題集をやりました。分からなくてもすぐに解答を見ず に時間をかけてちゃんと理解できるまで考えるように しました。そのペースでは試験では当然時間オーバー ですが、徐々に落ち着いて考える力が身についていっ たようです。本番では時間内にできました。  要は、練習段階では、時間よりも理解することに重 点を置くことと、アルゴリズムをできるだけたくさん おぼえることが大切だと思います。 この本は擬似言語にもC言語にも役に立つとおもいま す。  秘伝のアルゴリズム 福嶋宏訓 エーアイ出版

kamisori
質問者

お礼

はい。時間かけてがんばっていきたいとおもいます。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 基本情報 平成19年秋 午後第4問について

    擬似言語の問題ですが 変数idx,fintともに整数型です。 真ん中より少し上あたりに   「・idx← fint - (fint ÷ 10 ) × 10」 という行があると思います。 解説には fint = 12だとすると (fint ÷ 10 )  を行うと 、fintの一の位の2の部分が 打ち切られるというようなことが書かれていましたが これが納得できません。 fint ← fint ÷ 10 ならば  fint ← 1.2 = fint ÷ 10 とういうことであり、 1.2をfintに代入して少数以下が打ち切られるのがわかるのですが、 整数型の変数に格納しなくても、整数型の変数を割り算で行って小数になった場合、小数点以下が打ち切られるのは擬似言語の仕様なのでしょうか?

  • 基本情報技術者午後の勉強法

     初学者です。この春受験しましたが、不合格でした。午前は合格点に達していましたが、午後が40点台でした。どうもプログラムのトレースの基本が全くできないことに問題があるようですが、どのように手を付けていいかわかりません。  トレースを基礎の基礎から学び、できるようになりたいのですが、どのような勉強をすればいいですか。擬似言語とC言語です。おすすめの参考書・問題集などでも結構ですし、時間をかければできるようになる、こうすればできるようになる、手掛かりがほしいです。どなたかよろしくお願い致します。

  • 基本情報処理技術者試験のC言語対策

     1つのC言語の問題を解くのに1~2時間かかってしまいます。プログラムがたくさん載っていてトレースの練習ができる参考書教えてください。  本試験の2週間前から一ツ橋出版の「合格サポートC言語」を使って勉強してました。変数と演算、文字列と配列、選択文、繰り返し文、ポインタまでは1日でスラスラできましたが、それ以降の章末問題と実践問題が今のようなレベルです。

  • 基本情報午後対策について・・・。

    今春の基本情報(4/17実施)を受ける者です。 4ヶ月前から勉強していて、午前はどんな問題でも7割取れるめどが立ちました。ただ、午後は未だに6割ぐらいしか取れません。残り2週間で何とか午後を7割ぐらいとれる実力をつけたいのですが、どんな勉強をすればよいのでしょうか?アドバイスをお願いします。(一応、3年分の過去問は一通りやりました。) また、午後の私の学習状況ですが、問1~3・5は問題の”内容次第”で全問正解もあれば、5割以下もあり。問4(擬似言語)は全く苦手。プログラム言語(CASL)は6・7割の出来。という状況です。

  • 擬似言語のある処理について

    擬似言語についてわからないことがあります。 このプログラムはスタックを使って、実数値を10進数字に変換するプログラムです。 今回質問するのは、このプログラムの中でも数値を一桁ずつ10進数字に変換して、スタックに詰め込む部分です。 Fintは整数部分。Idxは変数。 IntはFの小数部をカットする。(つまり、整数部分だけにする処理です。) Chr[]={0,1,2,3,4,5,6,7,8,9},T (Chrは数値に対応する文字列を格納したものです。) Fint←Int(F) 繰り返し処理 Fint>0ならば ・Idx ← Fint - (Fint ÷ 10) × 10;Fintの最下位桁をIdxに取り出す。 ・Push(Chr[Idx]);最下位桁Idxに対応する数字をスタックにプッシュする ・Fint←Fint÷10;次の桁を最下位の桁にシフトする。 繰り返しで上へ 上記の「Fintの最下位桁をIdxに取り出す」という処理は たとえば、12,345という数字があったならば、12の最下位桁2を取り出すということなのだと思いますが、式に当てはめて計算すると 12-(12÷10)×10となりIdxに0という数字が格納されます。 その後に、Chrで0という数値を拾ってきて文字列0が格納されることになります。 しかし、問題文を見ると12,345という数字を変換すると12,345という文字列になっておりなぜ0?になってしまうのという話になります。 私の解釈は間違いだらけだと思いますが訂正していただけると 大変うれしいです。

  • 擬似言語 素朴な疑問

    こんばんは。 来春の試験に向けてアルゴリズムを勉強中ですが、初歩的なところでつまづいています。 ○のついた宣言文の表記規則について 1.変数、配列  ○プログラム名 に続いて()の中に記述されてあるもの  と○に後続して記述されてあるものは、何が違うのでしょうか。  プログラムの中での役割なのか、、適当にわかりにくくするためなのか。。 2.配列の要素数  配列名のあとに続く[]には、要素数を入れるよう説明していましたが、 擬似言語の問題文を見ると、大半が[]の中は空白です。これは 「要素数は[]に表記します」という意味で、表記するしないは任意なのでしょうか?それとも、要素数表記は必須だけども[]のあとにnなどという変数が表記されている場合、[]の中は空白でよろしいということなのでしょうか? うまく整理できませんが、ご質問に返答できる方いらしゃいましたらお助けください。。

  • 擬似言語で分からない点

    基本情報の午後問題集で擬似言語 (H12・午後4問・問題はこれです↓) http://www.kikiroom.com/it/2k/12s/2k12s_pm_q4.html をやっているのですが、分からない点があります。 1:ファイル入力は、1件ずつではなく、   一気に配列の中に格納されるのでしょうか? 2:最初の1件目は、どのようなルートを辿って   いくのでしょうか? 回答が面倒かと思われますが、宜しくお願い致します!

  • H20年秋期基本情報技術者午後問題の問2

    H20年秋期基本情報技術者午後問題の 問2(擬似言語)ですが、 主プログラムPrintOutの 整数型変数  LineC,MarginP,CurrentPで、 1.それぞれに、格納される物が分かりません。 2.もしかして、問題用紙に記載が洩れている?のでしょうか?   或いは、ココを読めば分かる、と、なっているのでしょうか? 詳しい方、教えて下さい! 今月の試験対策で、困っています。

  • アルゴリズムの勉強法は慣れしかないのでしょうか?

    学校の先生から、アルゴリズムは慣れだ慣れだと言われて、ひたすら問題を解くのですが、なにかしっくりきません。 時々、ここはなんでこういう事をしているのか分からないという所が出てきます。 例えば、基本情報技術者試験平成16年度春期午後のこの問題 http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H16a2/pm04.html において、擬似言語中の上から13行目の i: a_idx - span_idx , i < b_idx - a_idx , 1 では、教科書どおり?トレースしていくと a_idx - span_idx なんかは始めは0なんで、なぜ0としないでこんな事をやっているのかなあ・・・と頭を抱えてしまいます。 こうしている理由は、次々とループしていくとiの初期値は0でないときも出てくるからかな?とは想像できるのですが、 a_idx も span_idxもそれに伴って変化していくので 、なんでこんな式を使うの??? と頭がごちゃごちゃになってしまいます。 何か法則的なことがある程度はあるような気がするのですが・・・。 ごく初歩的な例で行くと、iは何の変数かといった時にプログラム中にT(i)などとあると、配列の添え字なんだなと分かる、みたいな事です。 どのようにして考えていけばいいのでしょうか? 何か法則みたいなものをご存知の方も、教えていただけないでしょうか? よろしくお願いします。

  • C言語について

    C言語を学習しています。 入門レベルの知識しか有りません。 <演習問題>  要素数nの配列v内のkeyと等しい全要素の添字を配列idxに格納する  関数search_idxを作成せよ。  返却するのはkeyと等しい要素の個数とする。   int search_idx(const int v[], int idx[], int key, int n); 例えば、vに受け取った配列の要素が{1,7,5,7,2,4,7}でkeyが7で     あれば、idxに{1,3,6}を格納した上で3を返却する。 というのが有るのですが、上手くプログラムが組めません。 ソースコードを伝授して頂けたら有難いです。

専門家に質問してみよう