ページ 11

データを読み込んで計算したいのです

Posted: 2009年8月18日(火) 02:41
by mint
こんにちは。ホントにプログラム初心者なのですが、急きょ、次のようなプログラムを作らないといけません。助けてください!


データ(data.txt)の内容が、
001,500,40
002,300,40
003,300,20
004,・・・

となっているデータを読み込んで、(この内容は、1列目が点の番号で、2列目がX座標、3列目がY座標となっています)この点どうしの距離をそれぞれ求めたいのです。点は、100まであります。出力は、
001-002=200
001-003=・・


99-100=・・
のようにしたいのですが、プログラム例を示して頂けるとありがたいです。よろしくお願い致します!!

Re:データを読み込んで計算したいのです

Posted: 2009年8月18日(火) 08:19
by バグ
せめて、開発環境と開発言語くらいはお願いします。

Re:データを読み込んで計算したいのです

Posted: 2009年8月18日(火) 10:50
by non
とりあえず、ファイルの読み込み部分のみ掲載。
あとは、距離を求めるのですが、求めた値をどうするかによって
作り方が違うような気がするので。ご自分でどうぞ。
#include <stdio.h>
typedef struct {
	int no;
	int x;
	int y;
}DATA;
int main(void)
{
	FILE *fp;
	DATA data[100];
	int i;
	if((fp=fopen("data.txt","r"))==NULL){
		printf("File Open ERROR!");
		return -1;
	}
	i=0;
	while(fscanf(fp,"%d,%d,%d",&data.no,&data.x,&data.y)!=EOF){
		printf("%d %03d %d %d\n",i,data.no,data.x,data.y);
		i++;
	}
	fclose(fp);
	return 0;
}