〇配列の大きさが事前に決まっていないけれども、プログラムが走り始めてからファイルとかキーボード入力などで外部から指定して配列の大きさが決まるというようなプログラム
〇配列の大きさがプログラム実行中に変化することができる
このようなプログラムを作成する方法を教えて頂きたいのですが。考え方とか、実行例などとかです。
Fortranの実例が一番ありがたいです。Fortranの導入本はどれも配列の大きさが固定のものばかりのようです。巻末近くで発展的な事例として紹介されたりするかも知れませんが。
※処理系に依存するので一般テキストには書きにくいことなのでしょうか。
よろしくお願いします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
リスト(構造)で検索してみればよろしいかと。
FORTRANプログラミング 11・12回 ポインタとリスト構造 - ax-b.com
http://ax-b.com/FPR2_2014/slide/141216.11.pointe …
No.2
- 回答日時:
普段FORTRANは使用しておらず詳しくはありませんが、「動的配列」で検索したらいくつか見つかりました。
以下はFortran90における例です。
「allocatable」を付けて配列変数を宣言し、「allocate」および「deallocate」で配列変数へのメモリ割り当ておよび開放を行う様です。c言語のmallocに近い物ではないかと推測します。
program array_alloc
implicit none
integer n, i
integer,allocatable,dimension(:) :: a
print *, "Enter number of data:"
read *, n
allocate( a(n) )
do i = 1, n
print *, "Enter item(", i, "):"
read *, a(i)
end do
print *, "Total=", sum(a)
deallocate(a) ! 特に指定しなくても自動的に領域が解放されます、このように指定することも可能
end program array_alloc
No.1
- 回答日時:
〇入力した後に入力した値をもとに配列の変数を初めて宣言したらいいのではないでしょうか
〇別の同じ大きさの配列を宣言してその中に全ての値をコピーしておいて元の配列にnullを代入して無にしてからまた同じ名前で宣言し直せばプログラム実行中にデータを失わずに配列の大きさを変えられる言語もあるのではないでしょうか
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- その他(プログラミング・Web制作) FORTRAN77の配列(除算) 2 2023/02/01 14:34
- C言語・C++・C# プログラミングを教えて欲しいです。 配列aは、int a[9]={7,6,12,8,3,5,10,9 4 2022/12/19 23:27
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- その他(プログラミング・Web制作) プログラムが書けません。 6 2023/01/22 22:58
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- その他(プログラミング・Web制作) pythonのプログラムについての質問です。 1 2023/05/26 10:31
- PHP ここで言う空文字の意味とは? 1 2022/08/05 16:27
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語 配列の長さの上限
-
配列を使わずに、変数名を動的...
-
配列で格納したものをmsgboxで...
-
先頭アドレスとは何ですか?
-
C# 配列の変数宣言について。
-
unsigned char配列への入力の仕方
-
pBluescriptベクター、pUC系ベ...
-
VBでC言語のポインタみたい...
-
テキストファイルから文字列を...
-
mallocの確保要素数の限界は?
-
C言語初心者 ポインタについて...
-
VBで構造体の配列を関数に渡す...
-
C++ vectorに配列をプッシュしたい
-
2次元配列を戻り値とする関数?
-
任意で決める配列を関数内から...
-
C言語の配列番号が"0"から始ま...
-
複数のボタンを配列で扱う方法...
-
ゼロサプレスって?
-
C# Listを使わずに2次元配列の...
-
C言語でcharの足し算
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語 配列の長さの上限
-
配列を使わずに、変数名を動的...
-
配列で格納したものをmsgboxで...
-
配列の参照渡しで型が一致しま...
-
C# Listを使わずに2次元配列の...
-
VBで構造体の配列を関数に渡す...
-
複数の選択範囲の行番号を個別...
-
パイソンの
-
先頭アドレスとは何ですか?
-
【速いブラインドタッチ】手を...
-
C# 配列の変数宣言について。
-
C言語初心者 ポインタについて...
-
unsigned char配列への入力の仕方
-
テキストファイルから文字列を...
-
ExcelVBAで質問です。離れた二...
-
Redimした動的配列はEraseする...
-
C言語で特定列だけを抽出して配...
-
擬似コード 長さがmの配列でな...
-
メモリの初期値
-
C言語初心者 構造体 課題について
おすすめ情報