2016-12-13 5 views
0

Я хочу рассчитать сумму арифметической прогрессии, в которой мы должны взять 3 переменные от пользователя. a = первое число, b = размер шага/приращение, c = длина последовательности. Если есть более одного тестового примера, скажем три, то мне нужно сканировать a, b, c три раза. Как это сделать? Например, scanf ("% d% d% d", a, b, c); 3 раза без изменения начальных значений в первом тестовом случае.Сканирование нескольких переменных в зависимости от тестовых примеров?

+0

Если вы знаете точное количество раз, используйте цикл for. В противном случае используйте цикл while (и выберите разумное условие выхода). Когда вы говорите, не влияя на начальные значения, хотите ли вы сохранить их в массиве для последующего использования? – doctorlove

+0

Если у меня есть 2 тестовых примера a, b, c = 1, 2, 5, то сумма прогессионной wud будет 1 + 3 + 5 + 7 + 9 = 25, – Vinnny

+0

Во втором случае я могу иметь a, b, c = 4 , 2, 10 и так далее. В основном я хочу использовать значения a, b, c каждый раз для вычисления новой суммы. – Vinnny

ответ

0

положить scanf ("% d% d% d", a, b, c); внутри цикла, тогда в том же цикле сделайте свое кодирование, что вы хотите делать со значениями, обязательно напишите эту строку scanf («% d% d% d», a, b, c); перед вашим рабочим кодом. или если вы хотите сохранить значения, то declear array для a, b, c, как aValues ​​[] bValues ​​[] cValuesthen [], затем поместите ваши данные в массив через цикл.

+0

Предположим, у меня есть функция вычисления суммы задачи. Как передать числа в массиве в качестве параметров функции? – Vinnny

+0

Функция void (data_type param []) {сделайте свой код здесь .....} –

+0

или вы можете использовать указатель как параметр функции .. но это когда-то ошибка, если вы не можете хорошо поддерживать свой код –

0

Если вы знаете, что нет тестовых примеров, сначала прочитайте его и сохраните в переменной.

int calculate_ap(int a, int b, int c) 
{ 
    //Implement function to calculate Arithmetic progression and return the result 
} 

int main() 
{ 
    int test_cases = 0; 
    int a, b, c; 
    scanf("%d", &test_cases); //Reads no of test cases 
    while(test_cases--) 
    { 
     scanf("%d, %d, %d", &a, &b, &c); //read A, B, C 
     printf("%d\n", calculate_ap(a, b, c)); 
    } 

} 

Надеюсь, это поможет.

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