/*4. write a program which will accept both positive and negative integers
from the user until 999 is entered to stop the prog.
sum up both sets of num separately and determine the smallest and largest num from both sets, display these results.
by Carey Riley, Student ID MO/10/7220/MS*/
#include <stdio.h>
#include <stdlib.h>
//int sum_minus(*,int); //prototype for sum of minus array
//int sum_plus(*int, int); //prototype for sum of plus array
int sum( int *, int ) ;
main( )
{
int num, count = 0 , minus_total, plus_total, total; //*a, //array_amount,;
int * plus, * minus;
printf ( "Enter 999 to exit.\n \n " ) ; do { //start of request loop
printf ( "Enter an integer, negative or positive:\n " ) ;
/*procedure to fill array*/
if ( num >= 0 )
{
* ( plus + count) = & num ;
count ++;
}
else
{
* ( minus + count) = & num ;
count++ ;
}
}
while ( num != 999 ) ;
//array_amount = count ;
//a = plus ;//assign to pointer for function call
plus_total = sum( plus, count) - 999 ;
//a = minus ; //assign to pointer for function call
minus_total = sum( minus, count) ;
/*How do I sort the elements in an array?*/
//printout of totals
printf ( "The sum of negative integers is %i.\n " , minus_total
) ; printf ( "The sum of positive integers is %i.\n \n " , plus_total
) ;
//minus_total > plus_total ? printf("%i is a larger number than %i.", minus_total, plus_total) : printf("%i is a larger number than %i.", plus_total, minus_total) ;
}
//int sum_minus(*a,b)
int sum( int * a, int populace)
{
int b, total = 0 ;
for ( b = 0 ; b <= populace; b++ )
{
total+=* ( a+ b) ;
} ;
return total;
}
Lyo0LiB3cml0ZSBhIHByb2dyYW0gd2hpY2ggd2lsbCBhY2NlcHQgYm90aCBwb3NpdGl2ZSBhbmQgbmVnYXRpdmUgaW50ZWdlcnMKZnJvbSB0aGUgdXNlciB1bnRpbCA5OTkgaXMgZW50ZXJlZCB0byBzdG9wIHRoZSBwcm9nLgpzdW0gdXAgYm90aCBzZXRzIG9mIG51bSBzZXBhcmF0ZWx5IGFuZCBkZXRlcm1pbmUgdGhlIHNtYWxsZXN0IGFuZCBsYXJnZXN0IG51bSBmcm9tIGJvdGggc2V0cywgZGlzcGxheSB0aGVzZSByZXN1bHRzLgoKYnkgQ2FyZXkgUmlsZXksIFN0dWRlbnQgSUQgTU8vMTAvNzIyMC9NUyovCgojaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUgPHN0ZGxpYi5oPgoKLy9pbnQgc3VtX21pbnVzKCosaW50KTsgLy9wcm90b3R5cGUgZm9yIHN1bSBvZiBtaW51cyBhcnJheQovL2ludCBzdW1fcGx1cygqaW50LCBpbnQpOyAvL3Byb3RvdHlwZSBmb3Igc3VtIG9mIHBsdXMgYXJyYXkKCmludCBzdW0oaW50ICosIGludCk7CgptYWluKCkKewogICAgaW50IG51bSwgY291bnQgPSAwLCAgbWludXNfdG90YWwsIHBsdXNfdG90YWwsICB0b3RhbDsvLyphLCAvL2FycmF5X2Ftb3VudCw7CmludCAqcGx1cywgKm1pbnVzOwpwcmludGYoIkVudGVyIDk5OSB0byBleGl0LlxuXG4iKTsKICAgIGRveyAgLy9zdGFydCBvZiByZXF1ZXN0IGxvb3AKICAgICAgICBwcmludGYoIkVudGVyIGFuIGludGVnZXIsIG5lZ2F0aXZlIG9yIHBvc2l0aXZlOlxuIik7CiAgICAgICAgc2NhbmYoIiVpIiwmbnVtKTsKCiAgICAgICAgLypwcm9jZWR1cmUgdG8gZmlsbCBhcnJheSovCgppZihudW0gPj0gMCkKewogICAgKihwbHVzICsgY291bnQpICA9ICZudW0gOwpjb3VudCArKzsKfQplbHNlCnsKICAgICoobWludXMgKyBjb3VudCkgID0gJm51bSA7CiAgICAgICAgY291bnQrKyA7Cn0KICAgICAgICB9CiAgICB3aGlsZSggbnVtICE9IDk5OSAgKTsKCi8vYXJyYXlfYW1vdW50ID0gY291bnQgOwoKLy9hID0gcGx1cyA7Ly9hc3NpZ24gdG8gcG9pbnRlciBmb3IgZnVuY3Rpb24gY2FsbAoKCnBsdXNfdG90YWwgPSAgc3VtKHBsdXMsIGNvdW50KSAtIDk5OSA7CgovL2EgPSBtaW51cyA7IC8vYXNzaWduIHRvIHBvaW50ZXIgZm9yIGZ1bmN0aW9uIGNhbGwKbWludXNfdG90YWwgPSBzdW0obWludXMsIGNvdW50KSA7Ci8qSG93IGRvIEkgc29ydCB0aGUgZWxlbWVudHMgaW4gYW4gYXJyYXk/Ki8KCgovL3ByaW50b3V0IG9mIHRvdGFscwoKcHJpbnRmKCJUaGUgc3VtIG9mIG5lZ2F0aXZlIGludGVnZXJzIGlzICVpLlxuIiwgbWludXNfdG90YWwpOwpwcmludGYoIlRoZSBzdW0gb2YgcG9zaXRpdmUgaW50ZWdlcnMgaXMgJWkuXG5cbiIsIHBsdXNfdG90YWwpOwoKLy9taW51c190b3RhbCA+IHBsdXNfdG90YWwgPyBwcmludGYoIiVpIGlzIGEgbGFyZ2VyIG51bWJlciB0aGFuICVpLiIsIG1pbnVzX3RvdGFsLCBwbHVzX3RvdGFsKSA6IHByaW50ZigiJWkgaXMgYSBsYXJnZXIgbnVtYmVyIHRoYW4gJWkuIiwgcGx1c190b3RhbCwgbWludXNfdG90YWwpIDsKZ2V0Y2hhcigpOwp9CgovL2ludCBzdW1fbWludXMoKmEsYikKaW50IHN1bShpbnQgKmEsIGludCBwb3B1bGFjZSkKewogICAgaW50IGIsIHRvdGFsID0gMDsKICAgIGZvciAoYiA9IDA7IGIgPD0gcG9wdWxhY2U7IGIrKyApCiAgICB7CiAgICAgICAgdG90YWwrPSooYStiKTsKICAgIH0gOwogICAgICAgIHJldHVybiB0b3RhbDsKICAgICAgICB9Cg==