プログラムの性能改善の課題が出ているのですが、アルゴリズムとしてネストループ方式、もしくはその延長上のものを用いること、とあります。
図書館でアルゴリズム関係の本を見てみたのですがどこにもネストループに関して説明がなく、大変困っています。
プログラム自体は、ファイルを読み込んで、表示させるだけの簡単なものです。
簡単に抜き出すと、

for (i=0;; i++){
if ((st = read_a(fd_name, &name_buf, i)) <=0) break;
for (j = 0;; j++){
if ((st =read_a (fd_home,&home_buf ,j)) <= 0) break;
if (!strcmp(name_buf.a , home_buf.b)){
printf("%s =%s (%s)\n", name_buf.a, name_buf.c ,
home_buf.c);
}
}
if (st <0) break;

といったものです。
注意事項として、break文を入れる手法を使わないこととあります。
お願いします。ネストループって何でしょう?教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

ネストループはリレーショナルデータベースでジョインを行うアルゴリズムと


してよく知らせています。
RDBMS で使われるネストループのアルゴリズムを簡単に説明すると、ファイル
でも表でもいいんですが2つあって、次のような感じのデータが入っていたと
します。

ファイル(表)1
ID 名前
3 佐藤
1 鈴木
5 中村
2 高橋
:

ファイル(表)2
ID 住所
1 東京都
2 大阪府
3 長野県
4 神奈川県
5 北海道
:

ここから

名前 住所
佐藤 長野県
鈴木 東京都
中村 北海道
高橋 大阪府
:

という出力を得る場合に、ファイル(表)1の1行目を読み込んで ID が
同じ行をファイル(表)2の先頭行から探していき、ID が同じ行が見つ
かったら、ファイル(表)1とファイル(表)2のデータを出力し、ファイル
(表)1の次の行の ID と同じ ID を持つ行をファイル(表)2の先頭行から
再度読み込んで探し、.... という繰り返しをするアルゴリズムです。
この方法だと、ファイル(表)1の行数 * ファイル(表)2の行数回の
比較が必要であるのと、ファイル(表)2は1度読み込んだ行をもう一度
読む必要があるので非効率的です。
データがソート済みであったりするともっと効率的なソートマージという
アルゴリズムが適用できます。またハッシュを使ったりするようなアルゴリズム
もあります。

この回答への補足

ありがとうございました。
なんとかレポートは完成しました。(^_^)/

補足日時:2002/02/12 14:20
    • good
    • 0
この回答へのお礼

回答ありがとうございます。(^_^)
なるほど。IDをファイル1から一行ずつ読み込んでファイル2とあわせていけばいいのですね。
とてもわかりやすかったです@

レポートなんで、効率とかは気にしません。自信のある人はハッシュクラスタリングを実装しても良い、とか先生は言うけど自信なんてないし(・_・;)

このくらいのプログラミングならできるかな・・・?
卒業がかかっているんでホントありがたかったです。

少しいじってみます。わからなくなったらまたお願いします。

お礼日時:2002/02/07 13:34

ある文の中に同じ文を組み込むことをネスト(入れ子)と呼びます。


ですからネストループとはループの中にループを入れた物です。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qフォームのラベルのプロパティを自動で設定したい

Access2013 vba です。

フォームの全てのラベル、テキストボックス、ボタン類をそれぞれの背景色や、テーマ、背景スタイルなどを設定したいのですが、どうやれば、全てのラベル、テキストボックス、ボタンなどを自動でループ処理で取得出来ますでしょうか。

よろしくお願いします。

Aベストアンサー

フォームをデザインビューで開く必要があります。で、保存。
windowmode は適当に。
標準モジュールで
docmd.OpenForm "formName",view:=acDesign,windowmode:=acHidden
forms!formName!ラベル2.backcolor = vbred
docmd.Close acForm ,"formName",save:=acSaveYes

Q作成したプログラムファイルの管理を行うプログラムというものを学校の課題

作成したプログラムファイルの管理を行うプログラムというものを学校の課題で行っているのですが、
この課題の制作にあたって、手始めにファイルの保存と読み込みを行う関数を作ろうと思うのですが、ファイルを保存する関数(save)と読み込む関数(load)の作り方、ファイルポインタに格納する方法がわかりません。

現在の途中経過を示します。

#include <stdio.h>
#include <stdlib.h>
struct date {/*作成日付を格納*/
int year;/*年*/
int month;/*月*/
int day;/*日*/
};

struct record {/*レコード*/
char title[30];/*タイトル名*/
char stitle[50];/*副タイトル名*/
struct date adate;/*作成日付*/
char path[50];/*パス名(ファイルがどこのフォルダにあるか)*/
char category[30];/*分類*/
};

int save(struct record file)/*ファイルを保存する*/
{
FILE *fp;
int c;

fp = fopen("program.txt","w");
if (fp == NULL){
fprintf(stderr,"Cannot open file: composition.txt\n");
return -1;
}
fprintf("");
fclose(fp);

}

int load(struct record file)/*ファイルを読み込む*/
{

}

int main()
{
int num;
char file;

int sortnum;

printf("プログラムファイル管理プログラムへようこそ!\n");
do{
printf("何をしますか?\n");
printf("[0:終了、1:保存、2:読み込み]\n");
printf("入力してください: ");
scanf("%d",&num);
if(num==1 && num == 2){
printf("ファイル名を指定してください: ");
scanf("%s",&file);
if(num==1)
save(file);
if(num==2)
load(file);
}else printf("入力された数値が正しくありません。\n");
}while(num != 0)
return 0;
}

作成したプログラムファイルの管理を行うプログラムというものを学校の課題で行っているのですが、
この課題の制作にあたって、手始めにファイルの保存と読み込みを行う関数を作ろうと思うのですが、ファイルを保存する関数(save)と読み込む関数(load)の作り方、ファイルポインタに格納する方法がわかりません。

現在の途中経過を示します。

#include <stdio.h>
#include <stdlib.h>
struct date {/*作成日付を格納*/
int year;/*年*/
int month;/*月*/
int day;/*日*/
};

struct record {/*レコード...続きを読む

Aベストアンサー

テキストで保存する方法を考えたけど、あまり良くない。(スペースが含まれてるとfscanfはそこで区切ってしまい、以降は正常に読めなくなる)
これを防ぐにはそれなりの処理を考える必要があるけど、面倒ならバイナリで構造体ごと保存・読み込みをした方が楽。


それにしても、元のソースは誤りが多い。
main関数内をどう直したかぐらいはチェックしてほしい。


#include <stdio.h>

struct date {/*作成日付を格納*/
int year;/*年*/
int month;/*月*/
int day;/*日*/
};

struct record {/*レコード*/
char title[30];/*タイトル名*/
char stitle[50];/*副タイトル名*/
struct date adate;/*作成日付*/
char path[50];/*パス名(ファイルがどこのフォルダにあるか)*/
char category[30];/*分類*/
};

int save(struct record data, const char *fname)/*ファイルを保存する*/
{
FILE *fp;

fp = fopen(fname,"w");
if (fp == NULL){
fprintf(stderr,"Cannot open file: %s\n", fname);
return -1;
}
fprintf(fp, "title=%s\n", data.title);
fprintf(fp, "stitle=%s\n", data.stitle);
fprintf(fp, "date=%04d-%02d-%02d\n", data.adate.year, data.adate.month, data.adate.day);
fprintf(fp, "path=%s\n", data.path);
fprintf(fp, "category=%s\n", data.category);

fclose(fp);
return(0);
}

int load(struct record *pdata, const char *fname)/*ファイルを読み込む*/
{
FILE *fp;

fp = fopen(fname,"r");
if (fp == NULL){
fprintf(stderr,"Cannot open file: %s\n", fname);
return -1;
}
fscanf(fp, "title=%s\n", pdata->title);
fscanf(fp, "stitle=%s\n", pdata->stitle);
fscanf(fp, "date=%04d-%02d-%02d\n", &(pdata->adate.year), &(pdata->adate.month), &(pdata->adate.day));
fscanf(fp, "path=%s\n", pdata->path);
fscanf(fp, "category=%s\n", pdata->category);

fclose(fp);
return(0);
}


int main(void)
{
int num;
char file[256];

int sortnum;

struct record recdata;

printf("プログラムファイル管理プログラムへようこそ!\n");
do{
printf("何をしますか?\n");
printf("[0:終了、1:保存、2:読み込み]\n");
printf("入力してください: ");
scanf("%d",&num);
if(num==1 || num == 2){
printf("ファイル名を指定してください: ");
scanf("%s",&file);
if(num==1)
save(recdata, (const char *)file);
if(num==2)
load(&recdata, (const char *)file);
}else if (num != 0) {
printf("入力された数値が正しくありません。\n");
}
}while(num != 0);
return 0;
}

テキストで保存する方法を考えたけど、あまり良くない。(スペースが含まれてるとfscanfはそこで区切ってしまい、以降は正常に読めなくなる)
これを防ぐにはそれなりの処理を考える必要があるけど、面倒ならバイナリで構造体ごと保存・読み込みをした方が楽。


それにしても、元のソースは誤りが多い。
main関数内をどう直したかぐらいはチェックしてほしい。


#include <stdio.h>

struct date {/*作成日付を格納*/
int year;/*年*/
int month;/*月*/
int day;/*日*/
};

struct record {/*レコード*/
char ti...続きを読む

Q小山でおいしいお店は~?

私は、こちらに来てまもないので、小山周辺が全然わかりません。どなたか小山周辺でおいしいお店しりませんか?ジャンルは、なんでもかまいません。

Aベストアンサー

城東公園の近くにある『一品香』というラーメン屋さん。昼時行列出来てます。ギョウザが美味しいョ。 ジャスコの隣にあるパスタ屋『バリエ』のカボチャプリン好きです。

Q経路探索のアルゴリズムを改善したい

実際はFlashで書いていましたが、アルゴリズムに関してなので、
多種方面の方にご教示・助言を頂きたいと思い、
わかる範囲での C# に書き換えこちらのカテゴリーで質問しています。

■ 2次元配列に格納されているマップ情報を使い、特定の場所からの最短経路を全て出す
・マップに格納されている情報は、通行 可/不可 のみ
・経路の探索進行方向は縦横左右のみ
・障害物がないマス全てへの最短経路を求める
・障害物により辿りつけないマスは求める内容から除外

上記の目的・条件をもとに下記のようになりました。
C#だとほんの一瞬ですが、マップをこれより少し広くして行うと、Flash上では反復回数制御により強制的に止まってしまうため、探索用関数を改善したいと思っています。
同じ結果が得られれば全く違う内容でも構いません、何か良い案がありましたら、よろしくお願いします。
(ここでは静的なマップ内容ですが、実際は障害物の有無が動的に変わります)


using System;

namespace ConsoleApplication1 {
class Program {
static int count;
static int[][] chMap;//歩数格納用配列
static bool[][] myMap;//マップ格納用配列
const int mx = 10;
static void Main(string[] args) {
int[] stP = { 1, 2 };//探索開始位置{Y,X}
chMap = new int[mx][];
for (int i = 0; i < chMap.Length; chMap[i++] = new int[mx]) ;


bool o = true;//障害物なし 通行可能
bool x = false;//障害物あり 通行不可能
myMap = new bool[mx][];
myMap[0] = new bool[mx] { o, o, o, o, o, o, o, o, o, o };
myMap[1] = new bool[mx] { o, o, o, o, o, o, o, x, o, o };
myMap[2] = new bool[mx] { o, o, o, o, o, o, o, x, o, o };
myMap[3] = new bool[mx] { o, o, o, o, o, o, o, x, o, o };
myMap[4] = new bool[mx] { o, o, o, o, o, o, o, x, o, o };
myMap[5] = new bool[mx] { x, x, x, o, o, o, o, x, o, o };
myMap[6] = new bool[mx] { o, o, o, o, o, x, x, x, o, o };
myMap[7] = new bool[mx] { o, o, o, o, o, x, o, o, o, o };
myMap[8] = new bool[mx] { o, o, o, o, o, x, o, o, o, o };
myMap[9] = new bool[mx] { o, o, o, o, o, x, o, o, o, o };


Write:
count = 0;

for (int Y = 0; Y < myMap.Length; Y++) {
for (int X = 0; X < myMap[Y].Length; X++) {
Console.Write(myMap[Y][X] ? "□ " : "■ ");
chMap[Y][X] = myMap[Y][X] ? myMap.Length * myMap.Length : -1;
}
Console.WriteLine();
}
Console.WriteLine();
G2P(stP[0], stP[1], 0);
for (int Y = 0; Y < chMap.Length; Y++) {
for (int X = 0; X < chMap[Y].Length; X++) {
Console.Write(chMap[Y][X] == 0 ? "★ " : chMap[Y][X] == -1 ? "■ " : chMap[Y][X] == myMap.Length * myMap.Length ? "-- " : chMap[Y][X].ToString("00 "));
}
Console.WriteLine();
}


Console.WriteLine("\n探索用関数を " + count.ToString() + " 回 通りました");
Console.ReadKey();
goto Write;

}
//探索用関数
static void G2P(int y, int x, int n) {
++count;
if (y < 0 || x < 0 || y >= myMap.Length || x >= myMap.Length) return;
chMap[y][x] = n;
if (x + 1 < mx && chMap[y][x + 1] > n + 1 && myMap[y][x + 1]) {
G2P(y, x + 1, n + 1);
}
if (x - 1 >= 0 && chMap[y][x - 1] > n + 1 && myMap[y][x - 1]) {
G2P(y, x - 1, n + 1);
}
if (y + 1 < mx && chMap[y + 1][x] > n + 1 && myMap[y + 1][x]) {
G2P(y + 1, x, n + 1);
}
if (y - 1 >= 0 && chMap[y - 1][x] > n + 1 && myMap[y - 1][x]) {
G2P(y - 1, x, n + 1);
}
}

}
}

実際はFlashで書いていましたが、アルゴリズムに関してなので、
多種方面の方にご教示・助言を頂きたいと思い、
わかる範囲での C# に書き換えこちらのカテゴリーで質問しています。

■ 2次元配列に格納されているマップ情報を使い、特定の場所からの最短経路を全て出す
・マップに格納されている情報は、通行 可/不可 のみ
・経路の探索進行方向は縦横左右のみ
・障害物がないマス全てへの最短経路を求める
・障害物により辿りつけないマスは求める内容から除外

上記の目的・条件をもとに下記のよう...続きを読む

Aベストアンサー

「Flash の反復回数制御」は知りませんが, 「1点から他のすべての点までの最短経路」といえば普通は Dijkstra のアルゴリズム. 今の場合は実質的に「キューを使った幅優先探索」となります.
大雑把には
・まず出発点をキューに入れる
・キューから点を 1個取り出す
・そこからいける点の距離を更新し, 「距離を更新した点」をキューに入れる
・キューから点がなくなるまで繰り返す.
で OK.

Q栃木県小山市で100人の宴会場

タイトルの通り栃木県小山市で100人の宴会ができる場所を探しています。
畳の部屋で料理が美味しいところでお勧めは無いでしょうか?

Aベストアンサー

こんばんわ

以前にも似たような質問ありましたけど・・・
ここですかね。。

「海鮮酒房 大将」

畳の部屋で100人出来ると書いてあります。

参考URL:http://gourmet.gyao.jp/0003000779/

Qこのプログラムのアルゴリズムを教えていただけませんか?

ファイルlog.txtの文章中からIPアドレスを抜き出し、ip.txtに書き込むというプログラムです。文章は 日付 http attempt from xxxx.xxxx.xxxx.xxxx:ポート番号とう具合に並んでいます。
/*・・・ from IP:portなフォーマットが前提*/
より下でIPを検出しているとおもうのですが、具体的にどういう手順で検出しているのかわかりません。
どうか宜しくお願いします。




#include <stdio.h>
#include <string.h>


void
addLine(const char*,FILE*);

char*
getFromIP(const char*,char*);

int main()
{
FILE*pFileA = fopen("log.txt","rt");
charbuff[256];

if(pFileA){
FILE*pFileB = fopen("ip.txt","wt");
if(pFileB){
for(;fgets(buff,256,pFileA) != NULL;){
char buff2[32] = {'\0'};
addLine(getFromIP(buff,buff2),pFileB);
}
fclose(pFileB);
}
fclose(pFileA);
}
return 0;
}

/*・・・ from IP:portなフォーマットが前提*/
char*
getFromIP(const char* line,char* buff){
const size_t length = strlen(line);
size_ttop,back = length-1,i,k;
for(back = length-1;line[back] != ':';--back);
for(i=0,top = back - 1;i<3;++i){
for(;line[top] != '.';--top);
}
for(;line[top-1] != ' ';--top);
for(i=top,k=0;i<back;buff[k++] = line[i++]);
return buff;
}

void
addLine(const char* str,FILE* pFile){
charbuff[1024];
sprintf(buff,"%s\n",str);
fputs(buff,pFile);
}

ファイルlog.txtの文章中からIPアドレスを抜き出し、ip.txtに書き込むというプログラムです。文章は 日付 http attempt from xxxx.xxxx.xxxx.xxxx:ポート番号とう具合に並んでいます。
/*・・・ from IP:portなフォーマットが前提*/
より下でIPを検出しているとおもうのですが、具体的にどういう手順で検出しているのかわかりません。
どうか宜しくお願いします。




#include <stdio.h>
#include <string.h>


void
addLine(const char*,FILE*);

char*
getFromIP(const char*,char*);

int...続きを読む

Aベストアンサー

あらまあ、わざとややこしく書いてるプログラムみたいですねえ。

じゃあもうちょっとわかりやすく書き直してみますか?

char *getFromIP(const char *line, char *buff)
{
 char *src, *dst;       // 作業用ポインタ
 src = strstr(line, "from"); // fromを見つける
 src += 4;          // fromの文字の分進める
 dst = buff;         // 作業用ポインタ
while(1)
 {
  if(isspace(*src))
  {
   src++;
   continue;        // スペースを読み飛ばす
  }
  else break;        // スペース以外なのでループを抜ける
 }
                // ここでsrcはIPアドレスの先頭を指している
                // 当然dstはbuffの先頭を指している
                // ここから文字列をコピーする
 while(1)
 {
  *dst = *src;        // 文字をコピーする
  if(*dst == ':')      // コロンだったら
  {
   *dst = '\0';       // コロンを終端文字に書き換えて
   break;          // ループを抜ける
  }
  if(*dst == '\0')      // コロンが見つからないまま文字列が終わった場合
  {
   break;          // 仕方がないのでループを抜ける
  }
  dst++;           // ポインタを進める
  src++;           // ポインタを進める
 }
 return buff;         // 戻り値は渡されたbuffのポインタ
}

ということですね。

え、これじゃダメ?

じゃ、コメントつけてみましょか?
char*
getFromIP(const char* line,char* buff){
const size_t length = strlen(line); // 文字列の長さを求めておく
size_t top,back = length-1,i,k;   // 変数定義
for(back = length-1;line[back] != ':';--back);
                   // 文字列の最後から':'(コロン)を探す。
for(i=0,top = back - 1;i<3;++i){   // 見つけたコロンの位置から3回ループ
                   //(コロンの1文字手前の位置をtopにセットしておく)
for(;line[top] != '.';--top);    // ピリオドを見つけるまで一文字ずつ戻っていく。
}
for(;line[top-1] != ' ';--top);   // 3個目のピリオドの前の位置からさらにスペースを探して
                   // 1文字ずつ戻っていく。
                   //(ということは、さっきの
                   // ピリオド探してたのは
                   // どういう意味があるのだろう)
                   // ともかく、この時点でやっと
                   // IPアドレスの先頭位置をみつけた。
                   // ここから文字列をコピー
             
for(i=top,k=0;i<back;buff[k++] = line[i++]);
                   // さっき見つけたコロンの
                   // 位置までbuffに文字をコピーする…
                   // あれ?終端文字をセットしてないよ!
return buff;
                   // おわりかよ!
}

このソースのキモは、
forの構文の使い方です。
for(A;B;C);はA;while(B){C;]と同じですが、読みづらくなります。はっきり言って、わざとやってるとしか思えません。そうでなければforがよっぽど好きなんでしょうね。
すべての一行forをwhileを使って書き直して、適切にインデントをつけるだけで、ずっと見通しがよくなります。やってみてください。

あと、元のソースではbuff2[32]={'\0'}としてます。
これもわざとやってるんでしょうね。
char buff[32];
memset(buff, '\0', 32);
と同じ効果が得られると思いますが、わかりにくいです。
でも、あらかじめ初期化しておかなくてもいいように、最後にちゃんと終端文字をつけてやるほうが安全ですね。

あらまあ、わざとややこしく書いてるプログラムみたいですねえ。

じゃあもうちょっとわかりやすく書き直してみますか?

char *getFromIP(const char *line, char *buff)
{
 char *src, *dst;       // 作業用ポインタ
 src = strstr(line, "from"); // fromを見つける
 src += 4;          // fromの文字の分進める
 dst = buff;         // 作業用ポインタ
while(1)
 {
  if(isspace(*src))
  {
   src++;
   continue;        // スペース...続きを読む

Q除湿機と洗濯物

除湿機で部屋干しの洗濯物が乾くと聞いたのですが、洗濯物も乾かせるタイプはとても高価みたいで…。
実際のところ、普通に部屋乾燥用のタイプでは、洗濯物が乾くほどのパワーはないですか?
部屋用タイプでも洗濯物もいけると聞いたのですが、どうなのでしょうか?
部屋干しの洗濯物を考えた場合、どんなタイプを買うべきでしょうか?

Aベストアンサー

我家では、象印の一番安い除湿機(プリティドライ)を使っていますが、きちんと乾燥できますよ。
もちろん乾燥モードで、かつ「速乾コース」と言うのを選択すると、結構乾きます。
その前提として、
・洗濯後の脱水は十分に。
・大量の衣類は干さない。
・部屋は小さめで。
としてます。

ちなみに、15000円~20000円程度で買えますが、予算に余裕があれば、もうひとつ上のが良いと思います。(パワフルなので。)
あと、除湿機使用時の電気代は覚悟してくださいね。毎日使えば、1000円/月くらい余計にかかります。
と言う事で、出来るだけ外干ししています。

参考URL:http://www.zojirushi.co.jp/syohin/05living/03list.html

Qc言語のプログラムでこの実行結果を出したいのですがどうプログラムすればできますか? 続きの画像は補

c言語のプログラムでこの実行結果を出したいのですがどうプログラムすればできますか?

続きの画像は補足でだします

Aベストアンサー

#include <stdio.h>
#include <stddef.h>

void calc_average(int class[][2], size_t n);

int main(void) {
 int class[4][2] = {{0, 0}};
 calc_average(class, sizeof(class)/sizeof(class[0]));
 return 0;
}

void calc_average(int class[][2], size_t n) {
 int i, j, k;
 printf("クラス(1〜3) --> ");
 scanf("%d", &i);
 if (i <= 0) {
  for (j = 1; j < n; j++)
   printf("クラス %d の平均点 : %f\n", j, ((double)class[j][1])/class[j][0]);
 } else if (i > 0 && i < 4) {
  printf("点数 --> ");
  scanf("%d", &k);
  class[i][0] += 1;
  class[i][1] += k;
  return calc_average(class, n);
 } else
  return calc_average(class, n);
}

#include <stdio.h>
#include <stddef.h>

void calc_average(int class[][2], size_t n);

int main(void) {
 int class[4][2] = {{0, 0}};
 calc_average(class, sizeof(class)/sizeof(class[0]));
 return 0;
}

void calc_average(int class[][2], size_t n) {
 int i, j, k;
 printf("クラス(1〜3) --> ");
 scanf("%d", &i);
 if (i <= 0) {
  for (j = 1; j < n; j++)
   printf("クラス %d の平均点 : %f\n", j, ((double)class[j][1])/class[j][0]);
 } else if (i > 0 && i < 4) {
  pri...続きを読む

Qループアンテナ購入について・・・

AMループアンテナを購入しようと考えているのですが、以下の中でどのループアンテナがいいでしょうか。ミズホUZ-77・ミズホUZ-K2・AMラジオ用増幅ループアンテナの中でどれが一番よいでしょうか?ちなみに、私は、三重県からニッポン放送を聴いています。以上以外のいいループアンテナありましたら、教えて下さい。価格は10000円くらいがいいです。(中古でもOK)

Aベストアンサー

ご返事がおそくなってすみません。

1.UZ-77はALA-10とほぼ同じ大きさなので,大差ないと思います。
 あと,巻き数が多ければ,その方が感度は良いでしょうが,これは見ただけではわかりません。

2.UZ-K2は,上記2者に比べてはるかに大きいので(面積でいえば9倍くらい),電波を捕捉する
 能力は大きいはずです。

3.工作はそんなに難しいとは思えません。
 ただ,エナメル線ですから,被覆に傷を付けない様に気配りしないといけません。
 傷が付いて短絡するとその分,巻き数が減ったのと同じことになります。
 また,キンクを作らないように,気をつける必要があります。
 キンクというのは,エナメル線のよじれによって,わっかが出来ることです。
 長い線を扱うときは要注意です。
 これらの注意は多分説明書にあると思います。
 そんなに難しい作業ではないと思います。
 ハンダ付けくらいは要るかもしれません。

4.プリアンプを入れると,近接した信号も一緒に強くなってきて,目的信号の受信を妨害します。
 そのため,なるべくなら入れないほうがよいのです。
(ALA-10の方に,直結,プリアンプの2つの端子があるのは,そのための配慮と思います)

 わたしは,ニッポン放送を聴いたことはないのですが,近くに強力な信号はありませんか?
 また,夜間になれば外国放送も入って来ると思いますが,近くに強力な信号はありませんか?
 もしあれば,プリアンプはおそらく役に立たないと思います。

以上,何かご質問に対して,抜けているところがあれば,再質問してください。

ご返事がおそくなってすみません。

1.UZ-77はALA-10とほぼ同じ大きさなので,大差ないと思います。
 あと,巻き数が多ければ,その方が感度は良いでしょうが,これは見ただけではわかりません。

2.UZ-K2は,上記2者に比べてはるかに大きいので(面積でいえば9倍くらい),電波を捕捉する
 能力は大きいはずです。

3.工作はそんなに難しいとは思えません。
 ただ,エナメル線ですから,被覆に傷を付けない様に気配りしないといけません。
 傷が付いて短絡するとその分,巻き数が減ったのと同...続きを読む

Q通信大学の課題でプログラムを作成し、ネットで

送付するようにとなっております。送るのは『.cファイル』と『.EXEファイル』を送るように指定されています。大学へ送る前に試しに、自分あてに送ってみました。すると≪このアイテムは問題を起こす可能性が含まれています。Microsoft outlookを利用している受信者はこれらの添付ファイルを開くことができなくなる可能性があります ≫という表示が出ました。それでも送付してみたのですが、送ってきたものには≪次のファイルは問題を起こす可能性があるため利用できなくなりました〇〇.EXE≫となりました。.Cファイルは送れたのですが.exeは送れませんでした。何が問題で、どうしたら送れるようになるか教えてください。すいませんがサルでもわかるレベルで教えてください。

Aベストアンサー

セキュリティ上の制限で、Outlookが拡張子exeのファイルを送るのに問題があるかもしれませんと、通信大学の窓口に問い合わせするのが一番だと思います。
おそらく適切な指示をもらえると思います。

# 受信側がOutlookを使用していなければ、そのまま送っても問題ないかもしれませんよ。


人気Q&Aランキング