2013-11-26 2 views
0

Это часть моего кодаизбежать повторяющегося кода

double y1 = a/(2 * Math.Sin(j1)); 
double y2 = a/(2 * Math.Sin(j2)); 
double y3 = a/(2 * Math.Sin(j3)); 
double y4 = a/(2 * Math.Sin(j4)); 
double y5 = a/(2 * Math.Sin(j5)); 
double y6 = a/(2 * Math.Sin(j6)); 
double y7 = a/(2 * Math.Sin(j7)); 
double y8 = a/(2 * Math.Sin(j8)); 
double y9 = a/(2 * Math.Sin(j9)); 
double y10 = a/(2 * Math.Sin(j10)); 
double y11 = a/(2 * Math.Sin(j11)); 
double y12 = a/(2 * Math.Sin(j12)); 

y1 - y12 и j1 - j12 все отдельные/разных значений,

Есть ли способ, чтобы петли, так что я не должен выписывать линию для

y1, y2, y3 
+0

Я угадал язык, основанный на предыдущие вопросы спрашивающего в. Пожалуйста, попробуйте, если это неверно. – Tim

+1

Попробуйте использовать массивы. – CodeCaster

+0

@ Тим я забыл упомянуть об этом, спасибо! – user2992445

ответ

0
double y[12]; 
double j[12] = {...}; 

for(int i = 0; i<12; i++){ 
    y[i]=a/(2 * Math.Sin(j[i])); 
} 
+0

спасибо! Я не могу голосовать, потому что у меня недостаточно представителей. – user2992445

+0

Рад помочь! постскриптум если мой ответ решит вашу проблему, нажмите большой флажок V, чтобы принять его как ответ :) – MeNa

0

Учитывая массив j

var jArray = new double[]{1.0,2.0,3.0}; 

вы можете получить массив y так:

var a = 99.99; // or whatever 'a' is 
var yArray = jArray.Select(j => a/(2 * Math.Sin(j))).ToArray(); 
0

Вы могли бы иметь массив для этих чисел.

Это было бы как:

double[] myArray = new double[12]; 
for(int i = 0; i<12; i++){ 
myArray[i] = a/(2 * Math.Sin(j[i])); 
} 
Смежные вопросы