1

ベクトルの加算、減算、乗算、外積を行う小さなプログラムを作成したいと思います。

したがって、ユーザーに入力してもらいたい-ベクトルの量-上記のベクトルの次元-ベクトルで正確に何をしたいのか(上記の関数の1つ)

私はプログラミングにまったく慣れていないので、正しいソースをまだ見つけていない可能性があります。この場合、正しい方向へのヒントをいただければ幸いです (特に、私はネイティブ スピーカーではないため、何を正確に検索すればよいか)。

私の問題:

常に n 個のベクトルを合計するように sum 関数をプログラムする方法がわかりません (n はユーザーが入力したベクトルの量です)。

残りの関数については大まかな考えを持っているので、このプログラムで再びあなたを悩ませることはないかもしれませんが、この総和問題は私にとって本当に問題です。

答えはどこかにあると確信していますが、それを見つけることができないようです。

よろしくお願いします:)

4

3 に答える 3

0

ストレート C または C++ を使用していますか?

動的メモリ割り当てが必要なため、配列に使用できるので C++ をお勧めstd::vectorします。これは完全に簡単です。C の方法はそれほど単純ではありません。

http://www.codeguru.com/cpp/cpp/cpp_mfc/stl/article.php/c4027/C-Tutorial-A-Beginners-Guide-to-stdvector-Part-1.htm

于 2013-04-19T20:38:53.123 に答える
0

この質問では、2 次元配列を malloc する方法について説明します行の長さが異なる多次元配列の割り当てに malloc を使用します。array[i] = (int*)malloc(sizeof(int) * lenght))

それをさらに一歩一歩進めていく方法。

1) int ポインターの配列を割り当てint** array = malloc(sizeof(int*) * n); ます。最初のポインターが配列の先頭を指し、配列が int* 型であるため、** を使用します。これらの int ポインターはそれぞれ別の配列を指します。

2) 配列をループする - for (i = 0; i < n; i++) C では、2 次元配列を malloc する簡単な方法はありません。各行を 1 つずつ作成する必要があります。

3) ループ内で水平配列を割り当てます -array[i] = (int*)malloc(sizeof(int) * length)

リンク先の質問には、割り当てが成功したことを確認するためのチェックが含まれています。これがどれほど必要かはわかりませんが、害はありません。

于 2013-04-19T20:40:49.410 に答える