2016-12-13 2 views
0

Ich möchte die Summe der arithmetischen Progression berechnen, in der wir 3 Variablen vom Benutzer nehmen müssen. a = erste Zahl, b = Schrittweite/Schrittweite, c = Länge der Sequenz. Wenn es mehr als einen Testfall gibt, sagen wir drei, dann muss ich a, b, c dreimal scannen. Wie macht man das? Zum Beispiel scanf ("% d% d% d", a, b, c); 3 mal ohne Auswirkung Anfangswerte im ersten Testfall.Mehrere Variablen in Abhängigkeit von Testfällen scannen?

+0

Wenn Sie die genaue Anzahl wissen, verwenden Sie eine for-Schleife. Andernfalls verwenden Sie eine while-Schleife (und wählen Sie eine vernünftige Ausgangsbedingung). Wenn Sie sagen, ohne die Anfangswerte zu beeinflussen, wollen Sie diese in einem Array zur späteren Verwendung speichern? – doctorlove

+0

Wenn ich 2 Testfälle habe a, b, c = 1, 2, 5 dann Summe der Progression wud 1+ 3 + 5 + 7 + 9 = 25, – Vinnny

+0

Im zweiten Fall kann ich a, b, c = 4 haben , 2, 10 und so weiter. Grundsätzlich möchte ich jedes Mal Werte von a, b, c verwenden, um eine neue Summe zu berechnen. – Vinnny

Antwort

0

put scanf ("% d% d% d", a, b, c); innerhalb einer Schleife dann in der gleichen Schleife tun Sie Ihre Codierung, was Sie mit den Werten tun möchten, stellen Sie sicher, diese Zeile scanf zu schreiben ("% d% d% d", a, b, c); vor deinem Arbeitscode. oder wenn Sie Werte speichern möchten, deklarieren Sie das Array für a, b, c wie aValues ​​[] bValues ​​[] cValuesthen [] und setzen Sie Ihre Daten dann durch die Schleife in das Array.

+0

Nehmen wir an, ich habe eine Funktion zum Berechnen der Summenaufgabe. Wie kann ich Zahlen als Funktionsparameter übergeben? – Vinnny

+0

Void-Funktion (data_type param []) {tun Sie Ihren Code hier .....} –

+0

oder Sie können einen Zeiger als Funktionsparameter verwenden .. aber das ist Fehler machen, wenn Sie nicht Ihren Code gut pflegen können –

0

Wenn Sie keine Testfälle kennen, lesen Sie sie zuerst und speichern Sie sie in einer Variablen.

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)); 
    } 

} 

Hoffe, das hilft.

Verwandte Themen