переобразование в цифры (c++) Допустим у меня есть лист имен. Мне нужно для каждого имени создать уникальную цифру, ID. Как можно это сделать наиболее эффективно? Например, Code: int idEgor = computeID("Egor"); int idPavel = computeID("Pavel");
Возьми Ascii код каждой буквы фамилии Будет что то типа фамилия Abcde код 6566676869 Изврат зато примитив При повторении фамилии и цифра будет такой же )
а массив ? Users[1] = computeID("Egor"); Users[2] = computeID("Pavel"); или двумерный... Users[1,1] = "Name: Egor"; Users[1,2] = computeID("Egor"); Users[2,1] = "Name: Pavel"; Users[2,2] = computeID("Pavel");
Jes, о да, очень грамотно, а если 300 имен будет, ты тоже так заполнять будешь? Code: #include <stdio.h> #include <stdlib.h> struct UID { char *name; unsigned short id; }*PUID; int main(int argc, char *argv[]) { int i; struct UID uid; char *names[] = {"Egor", "Alex", "Mixail", "Sergey", "Igor"}; srand(time()); for(i = 0; i < 5; i++) { uid.name = names[i]; uid.id = i + rand() % 10; printf("uid.name: %s\nuid.id: %d\n", uid.name, uid.id); } system("PAUSE"); return 0; }