-- This program does some simple analysis of some numbers -- read from standard input until end of file. -- It finds the sum of all of the values, and it -- counts the number of positive, zero, and negative values -- It displays the sum and the counts. -- -- -- Author: Ned Okie -- Date: 9/7/2009 with ada.text_io; use ada.text_io; with ada.integer_text_io; use ada.integer_text_io; procedure getgeninteofcountPZN is Num_Ints: Natural := 0; -- Number of elements that are input sum: Integer := 0; -- Sum of all values -- Number of positives, zeros, and negatives that were input numPositives, numZeros, numNegatives: Natural := 0; aNum: Integer; -- Temporarily holds each input number begin ------------------------------- -- Uses a general loop ------------------------------- -- Input and process some values -- using an end of file loop loop put("Enter a number: "); exit when ada.text_io.end_of_file; get(aNum); -- Count the number of integers that have been input Num_Ints := Num_Ints + 1; -- Sum the number sum := sum + aNum; -- Count Positives if aNum > 0 then numPositives := numPositives + 1; -- Count Zeros elsif aNum = 0 then numZeros := numZeros + 1; -- Count Negatives else -- aNum < 0 must be true numNegatives := numNegatives + 1; end if; end loop; -- Print number, sum and counts put_line("Overall count:" & Num_Ints'img); put_line("Overall sum:" & sum'img); put_line("Number of positives:" & numPositives'img); put_line("Number of zeros:" & Natural'image(numZeros)); put_line("Number of Negatives:" & Integer'image(numNegatives)); end getgeninteofcountPZN;