2014-11-06 2 views
2

Итак, я работал над программой, которая просит пользователя ввести значения, и когда пользователь выходит из кода, введя -99, предположим, что он возвращает общее значение всех чисел и среднего, но я «м озадачен Мои ценности продолжают получать overided от предыдущего ... вот мой кодGML Сохранение пользовательского ввода

{ 
var user_Input;<br> 
var output_msg;<br> 
var count;<br> 
var highest;<br> 
var value;<br> 
var total;<br> 

count = 0; 
do 
    { 
    user_Input = get_integer("Enter a number To add To the List(Enter -99 to leave)",-99); 
    if (user_Input == (-99)){ 
     continue} 
     count += 1; 
     value = 0; 
     value = value + user_Input; 
     average = value/count; 
     } 

    until(user_Input == (-99)){ 
    count -=1; 
    user_Input = user_Input + 99; 
    output_msg=("#Numbers Entered: " + string(count) + "##Total value of numbers: " +      string(highest) + "## Average:" + string(average));` 
    } 
    show_message(output_msg); 
    } 

Как я сделать это так, что не отменяет предыдущий?

ответ

1

Это потому, что вы устанавливаете значение, равное 0, каждый раз, когда выполняется цикл while. Попробуйте установить

value = 0; 

прежде чем вы начнете делать до петли. Возможно, сразу после

count = 0; 

как это:

count = 0; 
value = 0; 
do{ 
    user_Input = get_integer("Enter a number To add To the List(Enter -99 to leave)",-99); 
    if (user_Input == (-99)){continue} 
    count += 1; 
    value = value + user_Input; 
    average = value/count; 
    } 
+0

спасибо, что решить ее – user3215990

Смежные вопросы