2016-03-02 1 views
-1

Это мой текущий код:Тьюринга Строка/Int (положить их на той же линии)

var compMark : array 1 .. 5 of real 
var name : array 1 .. 5 of string 
var counter : int := -1 
for i : 1 .. 5 
    counter := counter + 1 
    exit when (counter = 5) 
    put "What is your name?" 
    get name (i) 
    if name (i) = "stop" then 
     cls 
     exit 
    end if 
    put "What is your mark in Computer Science?" 
    get compMark (i) 
    if compMark (i) < 0 or compMark (i) > 100 then 
     cls 
     put "Error" 
     return 
    end if 
    put "" 
end for 
cls 
put "Name \t\t Computer Science mark" 
for i : 1 .. upper (name) 
    put name (i) 
end for 
for j : 1 .. upper (compMark) 
    put "\t\t", compMark (j) 
end for 

Это то, что выход как:


Имя Computer Science Mark

имя


Как я хочу выход быть:


Имя Computer Science Mark

Имя 75

имя 35

имя 98


Кто-нибудь знает, как помочь мне с этим?

ответ

0

это выглядит как

for i : 1 .. upper (name) 
    put name (i) 
end for 
for j : 1 .. upper (compMark) 
    put "\t\t", compMark (j) 
end for 

должно быть:

for i : 1 .. 5 
    put name (i), "\t\t", compMark (i) 
end for 
+0

Большое спасибо, я пытался сделать что-то подобное, но не удалось, к счастью, я думаю, что я получаю сейчас. Это своего рода тема, но можете ли вы дать мне несколько советов о том, как рассчитать среднее значение всех оценок ученика? Имея некоторые проблемы – Noctis

+0

@Noctis вычислить сумму всех марок, а затем разделить ее по счету (5 в вашем случае) –

+0

Расчет суммы, на которой я застрял, у меня есть это: для i: 1 .. 5 put name (i), "\ t \ t", compMark (i) всего: = всего + compMark (i) avg: = итоговый/счетчик конец для положить "" положить «Среднее значение класса», avg: 0: 2, "%." – Noctis