Я разрабатываю приложение для Android ... которое является приложением, основанным на нумерологии, где ... AI имеет значение от 1 до 9, а затем JR и SZ, поэтому каждая буква имеет значения и вычисляет их. .. Мне нужно отобразить resultt, где вычисляется имя пользователя first, например, мое имя ROSHAN PETER ... мое имя - ROSHAN и фамилия PETER, поэтому значение равно 9 + 6 + 1 + 8 + 1 + 5, т. Е. Общее значение это 30 ... следующий мой возраст взят мой возраст 27, поэтому мне нужно взять upto ROSHA, потому что его общее значение равно 25, и когда я вычисляю значение N, оно станет 30. Поэтому мне нужно отобразить, как мое текущее значение N до 30 лет. предположим, что мое имя равно ОЗУ, мое общее значение равно 9 + 1 + 4, поэтому значение равно 14, а мой возраст равен 27, поэтому мне нужно вычислить общее количество ОЗУ, если оно будет таким, чтобы оно получилось 28, поэтому мое текущее письмо - M .. Я сделал код, подобный этому, но моя проблема заключается в том, что ... мое значение первого имени вычисляется один раз .. но мне нужно рассчитать его до моего возраста ... возьмите пример для имени RAM ...Android калькулятор для букв
Я обновляю свои код здесь ..
MainActivity
public void gReport(View V)
{
long sum17 = 0;
EditText et1 = (EditText) findViewById (R.id.editText1);
EditText et2 = (EditText) findViewById (R.id.editText2);
EditText et3 = (EditText) findViewById (R.id.editText3);
EditText et7 = (EditText) findViewById (R.id.editText7);
EditText et8 = (EditText) findViewById (R.id.editText8);
EditText et9 = (EditText) findViewById (R.id.editText9);
sum17 = getSum17(et1.getText().toString());
Intent i = new Intent(this, FullExplanation.class);
int day = Integer.parseInt(et7.getText().toString());
int month = Integer.parseInt(et8.getText().toString());
int year = Integer.parseInt(et9.getText().toString());
String s = String.valueOf(FullExplanationEntry.this.getAge(year, month, day));
i.putExtra("name17", sum17 + "");
i.putExtra("a", s + "");
startActivity(i);
}
private long getSum17(String text) {
// TODO Auto-generated method stub
long sum17 = 0;
EditText et7 = (EditText) findViewById (R.id.editText7);
EditText et8 = (EditText) findViewById (R.id.editText8);
EditText et9 = (EditText) findViewById (R.id.editText9);
int day = Integer.parseInt(et7.getText().toString());
int month = Integer.parseInt(et8.getText().toString());
int year = Integer.parseInt(et9.getText().toString());
String s = String.valueOf(FullExplanationEntry.this.getAge(year, month, day));
long t = Integer.parseInt(s);
char[] name17 = new char[text.length()];
name17 = text.toCharArray();
for(int i=0; i<text.length(); i++)
{
if(sum17 < t) {
sum17 += value17(name17[i]);
} else if (sum17 == t) {
return sum17;
} else {
return sum17;
}
}
return sum17;
}
private long value17(char a) {
// TODO Auto-generated method stub
switch(a)
{
case 'A':
return 1;
case 'B':
return 2;
case 'C':
return 3;
case 'D':
return 4;
case 'E':
return 5;
case 'F':
return 6;
case 'G':
return 7;
case 'H':
return 8;
case 'I':
return 9;
case 'J':
return 1;
case 'K':
return 2;
case 'L':
return 3;
case 'M':
return 4;
case 'N':
return 5;
case 'O':
return 6;
case 'P':
return 7;
case 'Q':
return 8;
case 'R':
return 9;
case 'S':
return 1;
case 'T':
return 2;
case 'U':
return 3;
case 'V':
return 4;
case 'W':
return 5;
case 'X':
return 6;
case 'Y':
return 7;
case 'Z':
return 8;
default:
return 0;
}
}
public int getAge (int _year, int _month, int _day) {
GregorianCalendar cal = new GregorianCalendar();
int y, m, d, a;
y = cal.get(Calendar.YEAR);
m = cal.get(Calendar.MONTH) + 1;
d = cal.get(Calendar.DAY_OF_MONTH);
cal.set(_year, _month, _day);
a = y - cal.get(Calendar.YEAR);
if ((m < cal.get(Calendar.MONTH) + 1)
|| ((m == cal.get(Calendar.MONTH) + 1) && (d < cal
.get(Calendar.DAY_OF_MONTH)))) {
--a;
}
if(a < 0)
throw new IllegalArgumentException("Age < 0");
return a;
}
no here .... – roshanpeter
Не используйте имена для бессмысленных переменных, особенно когда кто-то пытается прочитать ваш код. Сохраните время и напишите разборчивый код. ТАКЖЕ КОММЕНТАРИИ ПОЛЕЗНЫ, не следует плохой практике программирования. – JoxTraex
Извините Jox .... Я обязательно сделаю это из своего следующего кода ... Извините – roshanpeter