Le nom des chiffres romains. Traduction Chiffres romains, indiens, arabes (chiffres)
arabe Tamil birman |
Khmer Laotien mongol thaïlandais |
Chinois Japonais Suzhou coréen |
vietnamien bâtons de comptage |
Abjadia arménien Aryabhata cyrillique |
grec éthiopien juif Akshara-sankhya |
babylonien égyptien étrusque romain Danube |
Grenier Kipu Maya égéen Symboles du KPU |
2, 3, 4, 5, 6, 8, 10, 12, 16, 20, 60 | |
Néga-positionnel | |
symétrique | |
Fibonacci | |
Singulier (unaire) |
chiffres romains- les nombres utilisés par les anciens Romains dans leur système de nombres non positionnels.
Les nombres naturels s'écrivent en répétant ces chiffres. En même temps, si un grand nombre est devant un plus petit, alors ils sont ajoutés (principe de l'addition), si le plus petit est devant un plus grand, alors le plus petit est soustrait du plus grand (principe de soustraction). La dernière règle s'applique uniquement pour éviter la quadruple répétition d'une même figure.
Les chiffres romains sont apparus 500 avant JC chez les Étrusques, qui ont peut-être emprunté certains des chiffres aux proto-Celtes.
chiffres romains
Numéro Désignation1 | je |
2 | II |
3 | III |
4 | IV, jusqu'au XIX siècle - III |
5 | V |
6 | VI |
7 | VII |
8 | VIII (parfois - IIX) |
9 | IX (parfois - VIIII) |
10 | X |
20 | XX |
30 | xxx |
40 | XL |
50 | L |
60 | LX |
70 | LXX |
80 | LXXX |
90 | XC |
100 | C |
200 | CC |
300 | CCC |
400 | CD |
500 | RÉ; IƆ |
600 | CC ; IƆC |
700 | CDC ; IƆCC |
800 | DCCC ; IƆCCC |
900 | CM; CCIƆ |
1 000 | M; ↀ ; CIƆ |
2 000 | MM ; CIƆCIƆ |
3 000 | MMM ; CIƆCIƆCIƆ |
3 999 | MMMCMXCIX |
4 000 | MV ; ↀↁ ; CIƆIƆƆ |
5 000 | V; ↁ ; IƆƆ |
6 000 | MV ; ↁↀ ; IƆƆCIƆ |
7 000 | VMM ; ↁↀↀ ; IƆƆCIƆCIƆ |
8 000 | VMMM ; ↁↀↀↀ ; IƆƆCIƆCIƆCIƆ |
9 000 | IX; ↀↂ ; CIƆCCIƆƆ |
10 000 | X; ↂ ; CCIƆƆ |
20 000 | XX ; ↂↂ; CCIƆƆCCIƆƆ |
30 000 | XXXX ; ↂↂↂ; CCIƆƆCCIƆƆCCIƆƆ |
40 000 | XL ; ↂↇ ; CCIƆƆƆƆƆ |
50 000 | L; ↇ ; IƆƆƆ |
60 000 | LX; ↇↂ ; IƆƆƆCCIƆƆ |
70 000 | LXX; ↇↂↂ ; IƆƆƆCCIƆƆCCIƆƆ |
80 000 | LXXX ; ↇↂↂↂ ; IƆƆƆCCIƆƆCCIƆƆCCIƆƆ |
90 000 | XC ; ↂↈ ; CCIƆƆCCCIƆƆƆ |
100 000 | C; ↈ ; CCCIƆƆƆ |
200 000 | CC ; ↈↈ ; CCCIƆƆƆCCCIƆƆƆ |
300 000 | CCC ; ↈↈↈ ; CCCIƆƆƆCCCIƆƆƆCCCIƆƆƆ |
400 000 | CD; CCCIƆƆƆIƆƆƆƆ |
500 000 | RÉ; IƆƆƆƆ |
600 000 | CC ; IƆƆƆƆCCCIƆƆƆ |
700 000 | CDC ; IƆƆƆƆCCCIƆƆƆCCCIƆƆƆ |
800 000 | DCCC ; IƆƆƆƆCCCIƆƆƆCCCIƆƆƆCCCIƆƆƆ |
900 000 | CM; IC ; CCCIƆƆƆCCCCIƆƆƆƆ |
1 000 000 | M; JE; CCCCIƆƆƆƆ |
pas plus de trois fois de suite pas plus de 3999 source non spécifiée 2369 jours
XXXII- en particulier, il est d'usage de surligner les chiffres romains dans le texte manuscrit russe (cela n'est pas utilisé dans la composition typographique en raison de la complexité technique). Pour d'autres auteurs, le surlignage pourrait indiquer une augmentation de la valeur du chiffre de 1000 fois : V = 5000.
Montres Tissot avec l'orthographe traditionnelle "IIII"Ce n'est qu'au 19ème siècle que le nombre "quatre" s'écrit universellement "IV", avant que l'enregistrement "IIII" ne soit le plus souvent utilisé. Cependant, l'entrée "IV" se trouve déjà dans les documents du manuscrit "Forme de Cury" datant de 1390. Les cadrans de montres utilisent traditionnellement "IIII" au lieu de "IV" dans la plupart des cas, principalement pour des raisons esthétiques : cette orthographe offre une symétrie visuelle avec les chiffres "VIII" sur le côté opposé, et le "IV" inversé est plus difficile à lire que "IIII". Il existe également une version où IV n'était pas écrit sur le cadran car IV est la première lettre du nom du dieu Jupiter (IVPITER).
Le plus petit nombre peut être écrit à gauche du plus grand, puis il doit être soustrait du plus grand. Dans ce cas, seuls les nombres indiquant 1 ou des puissances de 10 peuvent être soustraits, et seuls les deux nombres les plus proches de la série de nombres au soustrait (c'est-à-dire le soustrait, multiplié par 5 ou 10) peuvent agir comme une diminution. Les répétitions d'un nombre inférieur ne sont pas autorisées. Ainsi, il y a seulement six options en utilisant la "règle de soustraction":
- IV = 4
- IX = 9
- XL=40
- XC = 90
- CD=400
- CM=900
Par exemple, le nombre 94 sera XCIV \u003d 100 - 10 + 5 - 1 \u003d 94 - la soi-disant "règle de soustraction" (apparue à l'époque de l'Antiquité tardive, et avant cela, les Romains écrivaient le chiffre 4 comme IIII , et le nombre 40 comme XXXX).
Il convient de noter que les autres méthodes de "soustraction" ne sont pas autorisées ; ainsi, le nombre 99 doit être écrit comme XCIX, mais pas comme IC. Cependant, aujourd'hui, dans certains cas, une notation simplifiée des chiffres romains est également utilisée : par exemple, dans le programme Microsoft Excel lors de la conversion de chiffres arabes en chiffres romains à l'aide de la fonction ROMAN(), vous pouvez utiliser plusieurs types de représentation des nombres, du classique au très simplifié (par exemple, le nombre 499 peut s'écrire CDXCIX, LDVLIV, XDIX, VDIV ou ID) . La simplification est que pour réduire n'importe quel chiffre, n'importe quel autre chiffre peut être écrit à sa gauche :
Des cas d'une telle notation de nombres (généralement des années) se retrouvent souvent dans le générique des séries télévisées américaines. Par exemple, pour l'année 1998 : IIMM au lieu de MCMXCVIII.
Application
Autographe de B. N. Eltsine le 10 novembre 1988. Le mois est indiqué en chiffres romains. Chiffres romains pour le jour de la semaine sur une vitrine à Vilnius- Numéro ordinal du monarque
- Numéro de corps dans les forces armées
- Groupe sanguin sur les patchs de l'uniforme du personnel militaire des Forces armées de la Fédération de Russie
- Base de dilutions homéopathiques (Conium X3, Aconium C200, etc.).
- En analyse mathématique, le nombre de la dérivée au-dessus du tiers est parfois écrit en chiffres romains.
Les chiffres romains étaient largement utilisés en URSS pour indiquer la date pour indiquer le mois de l'année, par exemple : 11/III-85 ou 9.XI.89, cela se voit sur de nombreux documents d'archives ces moments. De la même manière, à travers une barre oblique, ils ont également noté la date de la leçon dans les journaux de classe, par exemple : 24/II. Un format spécial était souvent utilisé pour indiquer les dates de vie et de mort sur les pierres tombales, où le mois de l'année était également indiqué par des chiffres romains, par exemple : 18 6 X I I 78 ∼ 19 5 I I I 53 (\displaystyle 18(\frac (6 )(XII))78\sim 19 (\frac (5)(III))53) . Un format similaire était utilisé dans les certificats médicaux dans les années 1970 et 1980.
Avec le passage au traitement informatique de l'information, les formats de date basés sur des chiffres romains sont pratiquement tombés en désuétude.
Dans d'autres langues, la portée des chiffres romains peut différer. Dans les pays occidentaux, le numéro de l'année est souvent écrit en chiffres romains, par exemple, sur les pignons des bâtiments et dans le générique des produits cinématographiques et vidéo.
Dans la Lituanie moderne, sur les panneaux routiers, sur les vitrines des magasins, sur les enseignes des entreprises, les jours de la semaine peuvent être indiqués par des chiffres romains.
Unicode
І · Ӏ · je · je · l · ﺍ · ו · Ι · ǀ · | ɪ 丨 Symboles avec un style similaire : V V ∨ ⋁ ⋎ Symboles avec un style similaire : X Χ X ㄨ Symboles avec un style similaire : L ÷ Symboles avec un style similaire : C C Ϲ င Un symbole avec un style similaire : ré Symboles avec un style similaire : M Μ M Ϻ Symboles avec un style similaire : ʕ · Ҁ · Ϟ · Ϛ · ႺFormes numériques(Anglais) Formes numériques) dans le domaine des caractères avec des codes de U+2160 à U+2188. Par exemple, MCMLXXXVIII peut être représenté sous la forme ⅯⅭⅯⅬⅩⅩⅩⅧ. Cette plage comprend à la fois des chiffres minuscules et majuscules pour les nombres 1 (Ⅰ ou I) à 12 (Ⅻ ou XII), y compris des glyphes combinés pour les nombres composés tels que 8 (Ⅷ ou VIII), principalement pour assurer la compatibilité avec les jeux de caractères d'Asie de l'Est dans normes industrielles telles que JIS X 0213, où ces caractères sont définis. Les glyphes combinés sont utilisés pour représenter des nombres qui étaient auparavant composés de caractères uniques (par exemple, Ⅻ au lieu de sa représentation par Ⅹ et Ⅱ). De plus, des glyphes existent pour les archaïques 1000, 5000, 10 000, grand C inversé (Ɔ), fin 6 (ↅ, similaire au stigmate grec : Ϛ), début 50 (ↆ, similaire à la flèche vers le bas ↓⫝⊥), 50 000, et 100 000. Il convient de noter que le petit dos c, ↄ n'est pas inclus dans les chiffres romains, mais est inclus dans la norme Unicode en tant que lettre claudienne majuscule Ↄ.
Code Unicode en chiffres romains 0 1 2 3 4 5 6 7 8 9 A B C D E F Valeur 1 2 3 4 5 6 7 8 9 10 11 12 50 100 500 1000 U+2160 U+2170 Valeur 1000 5000 10000 100 6 50 50 000 0 U+2 10
L'affichage de tous ces caractères nécessite un logiciel prenant en charge la norme Unicode et une police contenant les glyphes correspondants (telle que la police Universalia).
Expressions régulières
L'expression régulière pour vérifier les chiffres romains est ^(M(0,3))(D?C(0,3)|C)(L?X(0,3)|X)(V?I(0,3) | I)$ En Perl, vous pouvez utiliser l'expression régulière m/\b((?:M(0,3)?(?:D?C(0,3)|C)?(?:L ?X( 0,3)|X)?(?:I(0,3)?V?I(0,3)|I)))\b/gs.
transformation
Pour convertir des nombres écrits en chiffres arabes en chiffres romains, des fonctions spéciales sont utilisées. Par exemple, dans la version russe de Microsoft Excel, il existe une fonction pour cela ROMAIN ROMAIN(argument).
Fonctions de conversion JavaScript var arab = ; var romain = ["I","IV","V","IX","X","XL","L","XC","C","CD","D","CM ","M"] ; function arabToRoman(number) ( if(!number) return ""; var ret = ""; var i = arab.length - 1; while(number > 0) ( if(number >= arab[i]) ( ret + = roman[i]; nombre -= arab[i]; ) else ( i--; ) ) return ret; ) function romanToArab(str) ( str = str.toUpperCase(); var ret = 0; var i = arab .length - 1;var pos = 0;while(i >= 0 && pos< str.length) { if(str.substr(pos, roman[i].length) == roman[i]) { ret += arab[i]; pos += roman[i].length; } else { i--; } } return ret; } Аналогичные функции на Си (C89): #include const int arabar = { 1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, 900, 1000}; const char *romanar = { "I", "IV", "V", "IX", "X", "XL", "L", "XC", "C", "CD", "D", "CM", "M"}; char *arab2roman(unsigned short int arab) { static char roman; const int m = sizeof(arabar)/sizeof(int)-1, arabmax=arabar[m]; const char romanmax=romanar[m]; int i, n; if(!arab) { *roman=0; return roman; } i=0; while(arab>arabmax) ( roman = romanmax; arab -= arabmax; ) n=m; while(arab > 0) ( if(arab >= arabar[n]) ( roman = romanar[n]; if(n&1) roman = romanar[n]; arab -= arabar[n]; ) else n--; ) romain[i]=0 ; retour romain; ) entier court non signé roman2arab(char *roman) ( entier const m = sizeof(arabar)/sizeof(int)-1 ; int court non signé arab ; int len, n, i, pir ; len=strlen(roman); arab= 0 ; n=m ; i=0 ; tandis que(n >= 0 && i< len) { pir=n&1; if(roman[i] == romanar[n] && (!pir || roman == romanar[n])) { arab += arabar[n]; i += 1+pir; } else n--; } return arab; } Программа перевода арабских цифр в римские и наоборот type str2 = string; const Rims: array of str2 = ("M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"," "); Arab: array of integer = (1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1, 0); var N, NI, I, J: integer; S: string; function Arab2Rim(N: integer) : string; var S: string; I: integer; begin S:= ""; I:=1; while N >0 do begin while Arab[I]"" do begin while Rims[I] = Copy(S, 1, Length(Rims[I])) do begin S:= Copy(S, 1+Length(Rims[I]) , 255); N := N + arabe[I]fin ; je :=je+1fin ; Rim2Arab:= Nend ; begin WriteLn("Traduction de l'arabe aux chiffres romains. 1999 B_SA"); ( Write("Entrez un nombre à convertir :"); ReadLn(N);) for NI:= 26 to 46 do WriteLn(NI," = ",Arab2Rim(NI)," back ", Rim2Arab(Arab2Rim(NI) ) ); finir. Fonction de conversion arabe vers romain en Pascal function Arab2Roman(arab:integer):string; var i :entier ; d : entier ; arab_str:string; arab_len:entier; début Résultat := "" ; arab_str:= IntToStr(arabe); arab_len:= Longueur(arab_str); for i:= 0 to arab_len-1 do begin d:= StrToInt(String(arab_str)); si (d+1) mod 5 = 0 alors Résultat := Copie("IXCM", 1+i, 1) + Copie("VXLCDM", i*2 + (d+1) div 5, 1) + Résultat sinon Résultat := Copie("VLD", 1+i, d div 5) + Copie("IIIXXXCCCMMM", 1+i*3, (d mod 5)) + Résultat ; finir; finir;
Fonction BASIC de conversion de l'arabe vers le romain (code le plus court) 10 SAISIR "NOMBRE ARABE : " ; A$ 20 FOR I=0 TO LEN(A$)-1 30 X=VAL(MID$(A$,LEN(A$)-I,1)) 40 SI X=4 OU X=9 ALORS B$= MID$("IXCM",I+1,1)+MID$("VXLCDM",I*2+(X+1)/5,1)+B$ 50 IF X4 AND X case 1999) à roman sur XPath string-join(for $num in (1999) return (("","M","MM","MMM")[($num idiv 1000) mod 10+1], ( "","C", "CC","CCC","CD","D","DC","DCC","DCCC","CM")[($num idiv 100) mod 10+1 ], (""," X","XX","XXX","XL","L","LX","LXX","LXXX","XC")[($num idiv 10) mod 10+1], (" ","I","II","III","IV","V","VI","VII","VIII","IX")[$num mod 10 +1]), "" ) Une fonction pour convertir un nombre arabe (dans ce cas 1999) en un nombre romain en Perl use strict; utiliser des avertissements ; mon $n = 1999 ; mes $nums = [ ["", qw(I II III IV V VI VII VIII IX) ], ["", qw(X XX XXX XL L LX LXX LXXX XC) ], ["", qw(C CC CCC CD D DC DCC DCCC CM) ], ["", qw(M MM MMM) ] ] ; mon $i = 0 ; ma @res = (); push @res, ($nums->[$i++][ ($n % 10, $n = int($n / 10)) ]) for 0 .. 3; impression inverse @res ; Classe de conversion d'un nombre arabe (de 1 à 3999) en nombre romain en Java import java.util.*; public class IntegerConverter ( public static String intToRoman(int number) ( if (number >= 4000 || number iterator = units.descendingKeySet().iterator(); while (iterator.hasNext()) ( Integer key = iterator.next( ); while (number >= key) ( number -= key; result.append(units.get(key)); ) ) return result.toString(); ) private static final NavigableMap units; static ( NavigableMap initMap = new TreeMap<>(); initMap.put(1000, "M"); initMap.put(900, "CM"); initMap.put(500, "D"); initMap.put(400, "CD"); initMap.put(100, "C"); initMap.put(90, "XC"); initMap.put(50, "L"); initMap.put(40, "XL"); initMap.put(10, "X"); initMap.put(9, "IX"); initMap.put(5, "V"); initMap.put(4, "IV"); initMap.put(1, "je"); units = Collections.unmodifiableNavigableMap(initMap); ) ) Classe d'extension pour convertir les chiffres romains en chiffres arabes et vice versa, sur CSharp /// /// La classe est destinée à convertir les chiffres arabes en chiffres romains et vice versa /// /// /// La classe contient initialement les alphabet des nombres romains pouvant déterminer les nombres arabes de 1 à 39999 /// Si vous avez besoin d'étendre la plage, vous pouvez définir une notation supplémentaire pour les chiffres romains en utilisant /// le champ Chiffres romains de base public static class Chiffres romains ( /// /// Alphabet des chiffres romains de base /// L'alphabet est construit sous la forme La clé du dictionnaire est un nombre arabe (int), la valeur est son correspondant /// Le nombre romain (chaîne) /// /// /// Contient la notation romaine pour les nombres arabes 1*,4*,5*,9* - où "*" représente 0...N zéros /// Lorsqu'il est créé, il contient la désignation des nombres de 1 à 10000 (I... ↂ) peut initialement être converti au format romain de 1 à 39999. /// Si vous voulez pouvoir awn pour travailler avec grande quantité Chiffres romains, alors vous devez ajouter à la liste /// des symboles supplémentaires à partir de 40000 sans sauter les éléments 1*,4*,5*,9*. /// public static SortedList BasicRomanNumbers ( get; set; ) static RomanNumber() ( BasicRomanNumbers = new SortedList(17); BasicRomanNumbers.Add(1, "I"); BasicRomanNumbers.Add(4, "IV"); BasicRomanNumbers. Add(5, "V"); Basic Roman Numbers.Add(9, "IX"); Basic Roman Numbers.Add(10, "X"); Basic Roman Numbers.Add(40, "XL"); Basic Roman Numbers.Add(10, "X"); Basic Roman Numbers.Add(40, "XL"); Numbers.Add(50, "L"); BaseRomanNumbers.Add(90, "XC"); BaseRomanNumbers.Add(100, "C"); BaseRomanNumbers.Add(400, "CD"); BaseRomanNumbers.Add(500, "D"); BaseRomanNumbers.Add (900, "CM"); Basic Roman Numbers.Add(1000, "M"); Basic Roman Numbers.Add(4000, "Mↁ"); Basic Roman Numbers.Add(5000, "ↁ"); Basic Roman Numbers.Add(9000, "Mↂ" ); BasicRomanNumbers.Add(10000, "ↂ"); ) /// /// Calcule le nombre romain maximum possible pour l'alphabet de chiffres romains actuel. /// /// Nombre romain maximal possible public static uint MaximumRomanNumber() ( int lastNumber = BasicRomanNumbers.Keys.Last(); int numberWithoutZeros = int.Parse(lastNumber.ToString().Replace("0","\0 ")); int tentative=0 ; switch(NumberNoZeros) ( cas 1 : tentative = lastNumber * 4 - 1 ; break ; cas 4 : cas 9 : tentative = lastNumber ; break ; cas 5 : tentative = lastNumber + lastNumber / 5 * 3 ; break ; par défaut : break ; ) return uint.Parse(pre.ToString().Replace("0", "9"));; ) /// /// Convertit un entier en chiffre romain /// / / / Nombre arabe à convertir en notation romaine /// Généré lorsqu'un nombre égal à "0" /// ou supérieur au nombre romain maximum est passé en paramètre. /// Une chaîne représentant un nombre romain public static string ArabicRoman(this int numberArab) ( StringBuilder numberRoman = new StringBuilder(); //Exclure le signe "-" du nombre arabe et en faire le premier caractère du nombre romain si (nombrearabe< 0) { числоРимское.Append("-"); числоАраб = -числоАраб; } if (числоАраб == 0) throw new ArgumentOutOfRangeException("числоАраб", числоАраб, "Недопустимое значение аргумента: римские числа не могут быть равными\"0\""); else if (числоАраб >MaxRomanNumber()) throw new ArgumentOutOfRangeException("numberArab", numberArab, string.Format("Valeur d'argument non valide : impossible de définir un nombre romain supérieur à (0)", MaxRomanNumber())); // Décomposer le nombre arabe en ses nombres romains constitutifs et les combiner en une seule chaîne var requiredBasicRomanNumbers = from to in BasicRomanNumbers.Keys where k = 1) ( numberArab -= current; numberRoman.Append(BasicRomanNumbers[current]); ) ) return nombreRoman .ToString(); ) /// /// Convertit un nombre romain en arabe /// /// Un nombre romain à convertir en un type int /// Généré lorsqu'un nombre non romain est passé en paramètre /// Un entier représentant la notation arabe nombre romain public statique int romain vers arabe (cette chaîne nombre romain) ( int nombre arabe = 0 ; sbyte négatif = 1 ; chaîne roman = nombre romain.Trim(); if (roman == "-") ( négatif = -1; roman = roman.Substring(1); ) Modèle StringBuilder RomanNumber = new StringBuilder(); foreach (int to in BaseRomanNumbers.Keys) ( int index = BaseRomanNumbers.Keys.IndexOf(to); string quantifier="? "; if (index == 0 | |(index % 4) == 0) quantifier="(0,3)";RomanNumber template.Insert(0, string.Format("(?((1))(2 ))?", to.ToString() , BaseRomanNumbers[k], quantifier)); ) //Ignorer la casse + la correspondance doit commencer au début de la chaîne patternRomanNumbers.Insert(0, "(?i)^"); //La correspondance doit être trouvée à la fin de la chaîne patternP ImskogoNumber.Append("$"); // Vérification simplifiée. Ne vérifie pas les erreurs telles que IVII if (!Regex.IsMatch(Roman, RomanNumber template.ToString())) throw new FormatException(string.Format("Text \"(0)\" is not a Roman number",Roman Numéro)); Numéro de correspondance = Regex.Match(Roman, RomanNumber template.ToString()); foreach (int to in BaseRomanNumbers.Keys) ( numberArab += number.Groups[to.ToString()].Length / BaseRomanNumbers[to].Length * to; ) return numberArab * negative; ) )
Les chiffres romains sont :
Chiffres romains Carillons d'horloge de la tour Spasskaïa Systèmes de numération dans la culture Système de numération indo-arabeSystèmes de numération d'Asie de l'EstSystèmes de numération alphabétiqueAutres systèmes Systèmes de nombres positionnels Systèmes de nombres mixtes Systèmes de nombres non positionnelsarabe Indien Tamil birman |
Khmer Laotien mongol thaïlandais |
Chinois Japonais Suzhou coréen |
vietnamien bâtons de comptage |
Abjadia arménien Aryabhata cyrillique |
grec éthiopien juif Catapayadi |
babylonien égyptien étrusque romain |
Grenier Kipu Maïskaïa |
Système de numération décimale (10) | |
2, 3, 4, 5, 6, 7, 8, 9, 12, 16, 20, 60 | |
Système de nombres négatifs | |
Système de numération symétrique | |
Système de numération de Fibonacci | |
Système de numération d'unité (unaire) | |
Liste des systèmes de numération |
chiffres romains- les nombres utilisés par les anciens Romains dans leur système de nombres non positionnels.
Les nombres naturels s'écrivent en répétant ces chiffres. En même temps, si un grand nombre est devant un plus petit, alors ils sont ajoutés (principe de l'addition), si le plus petit est devant le plus grand, alors le plus petit est soustrait du plus grand (principe de soustraction). La dernière règle s'applique uniquement pour éviter la quadruple répétition d'une même figure.
Les chiffres romains sont apparus 500 avant JC chez les Étrusques.
Nombres
chiffres romains
En russe, il existe des règles mnémoniques pour fixer les désignations alphabétiques des nombres par ordre décroissant :
M s ré arim À PARTIR DE face à face L l'imonie, X vatité V Sem je X.
M s ré nous mangeons C conseil L ish X d'accord V bien élevé je personnes
Respectivement M, D, C, L, X, V, I
Exemples
Numéro Désignation romaine RemarquePour écrire correctement de grands nombres en chiffres romains, vous devez d'abord écrire le nombre de milliers, puis de centaines, puis de dizaines et enfin d'unités.
Dans ce cas, certains des nombres (I, X, C, M) peuvent être répétés, mais pas plus de trois fois; ainsi, ils peuvent être utilisés pour écrire n'importe quel entier pas plus de 3999(MMMCMXCIX). À règles précoces il y avait des signes pour indiquer des nombres plus grands - 5000, 10 000, 50 000 et 100 000 [ source non précisée 683 jours] (alors le nombre maximum selon la règle mentionnée est de 399 999). Lorsque vous écrivez des nombres dans le système de chiffres romains, le plus petit chiffre peut être à droite du plus grand; dans ce cas, il lui est ajouté. Par exemple, le nombre 283 en romain s'écrit CCLXXXIII, c'est-à-dire 100+100+50+30+3=283. Ici, le nombre représentant cent est répété deux fois, et les nombres représentant dix et un, respectivement, sont répétés trois fois.
Exemple : nombre 1988. Mille M, neuf cents CM, huit dizaines LXXX, huit unités VIII. Écrivons-les ensemble : MCMLXXXVIII.
Assez souvent, pour mettre en évidence les chiffres dans le texte, un trait était tracé dessus : LXIV. Parfois, la ligne était tracée à la fois au-dessus et au-dessous : XXXII- en particulier, il est d'usage de surligner les chiffres romains dans le texte manuscrit russe (cela n'est pas utilisé dans la composition typographique en raison de la complexité technique). Pour d'autres auteurs, le surlignement pourrait indiquer une augmentation de la valeur du chiffre de 1000 fois : VM = 6000.
Montres Tissot avec l'orthographe traditionnelle "IIII"Ce n'est qu'au 19ème siècle que le nombre "quatre" s'écrit universellement "IV", avant que l'enregistrement "IIII" ne soit le plus souvent utilisé. Cependant, l'entrée "IV" se trouve déjà dans les documents du manuscrit "Forme de Cury" datant de 1390. Les cadrans de montres utilisent traditionnellement "IIII" au lieu de "IV" dans la plupart des cas, principalement pour des raisons esthétiques : cette orthographe offre une symétrie visuelle avec les chiffres "VIII" sur le côté opposé, et le "IV" inversé est plus difficile à lire que "IIII".
Le plus petit nombre peut être écrit à gauche du plus grand, puis il doit être soustrait du plus grand. Dans ce cas, les répétitions d'un chiffre plus petit ne sont pas autorisées. En romain, le nombre 94 sera XCIV = 100-10 + 5-1 = 94 - la soi-disant "règle de soustraction" (apparue à l'époque de l'Antiquité tardive, et avant cela, les Romains écrivaient le nombre 4 comme IIII, et le nombre 40 comme XXXX). Il existe six façons d'utiliser la "règle de soustraction":
- IV = 4
- IX = 9
- XL=40
- XC = 90
- CD=400
- CM=900
Il convient de noter que les autres méthodes de "soustraction" ne sont pas autorisées ; ainsi, le nombre 99 doit être écrit comme XCIX, mais pas comme IC. Cependant, de nos jours, dans certains cas, une notation simplifiée des nombres romains est également utilisée : par exemple, dans Microsoft Excel, lors de la conversion de chiffres arabes en chiffres romains à l'aide de la fonction « ROMAN () », vous pouvez utiliser plusieurs types de représentation des nombres, du classique au très simplifié (par exemple, le nombre 499 peut s'écrire CDXCIX, LDVLIV, XDIX, VDIV ou ID). La simplification est que pour réduire n'importe quel chiffre, n'importe quel autre chiffre peut être écrit à sa gauche :
- 999. Mille (M), soustrayez 1 (I), obtenez 999 (IM) au lieu de CMXCIX. Conséquence : 1999 - MIM au lieu de MCMXCIX
- 95. Cent (C), soustrayez 5 (V), obtenez 95 (VC) au lieu de XCV
- 1950 : Mille (M), soustrayez 50 (L), on obtient 950 (LM). Conséquence : 1950 - MLM au lieu de MCML
Les chiffres romains peuvent également être utilisés pour écrire de grands nombres. Pour ce faire, une ligne est placée au-dessus des nombres qui représentent des milliers, et une double ligne est placée au-dessus des nombres qui représentent des millions. Par exemple, le numéro 123123 ressemblerait à ceci :
Et un million c'est comme moi, mais pas avec un, mais avec deux traits en tête : je
Application
Autographe de B. N. Eltsine le 10 novembre 1988. Le mois est indiqué en chiffres romains.En russe, les chiffres romains sont utilisés dans les cas suivants :
- Numéro du siècle ou du millénaire : XIX siècle, II millénaire av. e.
- Le matricule du monarque : Charles V, Catherine II.
- Numéro de volume dans un livre en plusieurs volumes (parfois numéros de parties de livre, de sections ou de chapitres).
- Dans certaines éditions - numéros de page avec la préface du livre, afin de ne pas corriger les références à l'intérieur du texte principal lors de la modification de la préface.
- Marques de cadran de montre antique.
- Autres événements importants ou éléments de liste, par exemple : V postulat d'Euclide, Seconde Guerre mondiale, XXe Congrès du PCUS, Jeux de la XXIIe Olympiade, etc.
- Valence des éléments chimiques.
- Le nombre ordinal d'une étape dans l'échelle.
Les chiffres romains étaient largement utilisés en URSS pour indiquer la date pour indiquer le mois de l'année : 11/III-85 ou 9.XI.89. Pour indiquer les dates de vie et de mort sur les pierres tombales, un format spécial était souvent utilisé, où le mois de l'année était également indiqué par des chiffres romains. Avec le passage au traitement informatique de l'information, les formats de date basés sur des chiffres romains sont pratiquement tombés en désuétude.
Dans d'autres langues, la portée des chiffres romains peut avoir certaines particularités, par exemple, dans les pays occidentaux, les chiffres romains enregistrent parfois le numéro de l'année.
Si nous développons graphiquement les nombres, nous obtenons ce qui suit :
№ | je | je | V | je | je | X | je | je | V | je | je | X | je | je | V | je | je | X | je | je | V | je | je | X | je | je | V | je | je | L | je | je | V | je | je | X | |||||||||||||||||||||||||
1 | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 | je | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 | je | V | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5 | V | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
6 | V | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
7 | V | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8 | V | je | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
9 | je | X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
10 | X | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
11 | X | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
12 | X | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
13 | X | je | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
14 | X | je | V | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15 | X | V | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
16 | X | V | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
17 | X | V | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
18 | X | V | je | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
19 | X | je | X | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20 | X | X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
21 | X | X | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
22 | X | X | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
23 | X | X | je | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
24 | X | X | je | V | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
25 | X | X | V | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
26 | X | X | V | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
27 | X | X | V | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
28 | X | X | V | je | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29 | X | X | je | X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | X | X | X | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | X | X | X | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
32 | X | X | X | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
33 | X | X | X | je | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
34 | X | X | X | je | V | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
35 | X | X | X | V | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
36 | X | X | X | V | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
37 | X | X | X | V | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
38 | X | X | X | V | je | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
39 | X | X | X | je | X | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
40 | X | L | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
41 | X | L | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
42 | X | L | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
43 | X | L | je | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
44 | X | L | je | V | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
45 | X | L | V | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
46 | X | L | V | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
47 | X | L | V | je | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
48 | X | L | V | je | je | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
49 | X | L | je | X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
50 | L | etc. jusqu'à MMMCMXCIX (3999) |
Unicode
La norme Unicode recommande d'utiliser des lettres latines régulières pour représenter les chiffres romains. Cependant, la norme inclut également des caractères spéciaux pour les chiffres romains dans le cadre de Formes numériques(Anglais) Formes numériques) dans le domaine des caractères avec des codes de U+2160 à U+2188. Par exemple, MCMLXXXVIII peut être représenté sous la forme ⅯⅭⅯⅬⅩⅩⅩⅧ. Cette gamme comprend à la fois des chiffres minuscules et majuscules de 1 (Ⅰ ou I) à 12 (Ⅻ ou XII), y compris des glyphes combinés pour les nombres composés tels que 8 (Ⅷ ou VIII), principalement pour la compatibilité avec les jeux de caractères d'Asie de l'Est dans les normes de l'industrie telles que comme JIS X 0213, où ces caractères sont définis. Les glyphes combinés sont utilisés pour représenter des nombres qui étaient auparavant composés de caractères uniques (par exemple, Ⅻ au lieu de sa représentation par Ⅹ et Ⅱ). De plus, des glyphes existent pour les archaïques 1000, 5000, 10 000, grand C inversé (Ɔ), fin 6 (ↅ, similaire au stigmate grec : Ϛ), début 50 (ↆ, similaire à une flèche pointant vers le bas. Modèle : Wmwwyairrufctr5ke4fuyUnicode ), 50 000 et 100 000. Notez que le petit c arrière, ↄ n'est pas inclus dans les chiffres romains, mais est inclus dans la norme Unicode en tant que lettre claudienne majuscule Ↄ.
Code Unicode en chiffres romains 0 1 2 3 4 5 6 7 8 9 A B C D E F Valeur 1 2 3 4 5 6 7 8 9 10 11 12 50 100 500 1000 U+2160 U+2170 Valeur 1000 5000 10000 - - 6 50 50 000 00 100 U+2160 ! U+2180
L'affichage de tous ces caractères nécessite un logiciel prenant en charge la norme Unicode et une police contenant les glyphes correspondants.
Expressions régulières
L'expression régulière pour vérifier les chiffres romains est "^(?i)M(0,3)(D?C(0,3)|C)(L?X(0,3)|X)(V?I(0 , 3)|I)$". En Perl, vous pouvez utiliser l'expression régulière "m/((?i)M(0,3)(D?C(0,3)|C)(L?X(0,3)|X )(I| V?I(0,3)))/g".
transformation
Pour convertir des nombres écrits en chiffres arabes en chiffres romains, des fonctions spéciales sont utilisées. Par exemple, dans la version russe de Microsoft Excel, il existe une fonction pour cela ROMAIN(argumentation), dans version anglaise Microsoft Excel et dans n'importe quelle version d'OpenOffice.org Calc cette fonction est appelée ROMAIN(argument).
Fonctions de conversion JavaScript var arab = ; var romain = ["I","IV","V","IX","X","XL","L","XC","C","CD","D","CM ","M"] ; function arabToRoman(number) ( if(!number) return ""; var ret = ""; var i = arab.length - 1; while(number > 0) ( if(number >= arab[i]) ( ret + = roman[i]; nombre -= arab[i]; ) else ( i--; ) ) return ret; ) function romanToArab(str) ( str = str.toUpperCase(); var ret = 0; var i = arab .length - 1;var pos = 0;while(i >= 0 && pos< str.length) { if(str.substr(pos, roman[i].length) == roman[i]) { ret += arab[i]; pos += roman[i].length; } else { i--; } } return ret; } Аналогичные функции на Си (C89): #include const int arabar = { 1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, 900, 1000}; const char *romanar = { "I", "IV", "V", "IX", "X", "XL", "L", "XC", "C", "CD", "D", "CM", "M"}; char *arab2roman(unsigned short int arab) { static char roman; const int m = sizeof(arabar)/sizeof(int)-1, arabmax=arabar[m]; const char romanmax=romanar[m]; int i, n; if(!arab) { *roman=0; return roman; } i=0; while(arab>arabmax) ( roman = romanmax; arab -= arabmax; ) n=m; while(arab > 0) ( if(arab >= arabar[n]) ( roman = romanar[n]; if(n&1) roman = romanar[n]; arab -= arabar[n]; ) else n--; ) romain[i]=0 ; retour romain; ) entier court non signé roman2arab(char *roman) ( entier const m = sizeof(arabar)/sizeof(int)-1 ; int court non signé arab ; int len, n, i, pir ; len=strlen(roman); arab= 0 ; n=m ; i=0 ; tandis que(n >= 0 && i< len) { pir=n&1; if(roman[i] == romanar[n] && (!pir || roman == romanar[n])) { arab += arabar[n]; i += 1+pir; } else n--; } return arab; } Программа перевода арабских цифр в римские и наоборот type str2 = string; const Rims: array of str2 = ("M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"," "); Arab: array of integer = (1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1, 0); var N, NI, I, J: integer; S: string; function Arab2Rim(N: integer) : string; var S: string; I: integer; begin S:= ""; I:=1; while N >0 do begin while Arab[I]"" do begin while Rims[I] = Copy(S, 1, Length(Rims[I])) do begin S:= Copy(S, 1+Length(Rims[I]) , 255); N := N + arabe[I]fin ; je :=je+1fin ; Rim2Arab:= Nend ; begin WriteLn("Traduction de l'arabe aux chiffres romains. 1999 B_SA"); ( Write("Entrez un nombre à convertir :"); ReadLn(N);) for NI:= 26 to 46 do WriteLn(NI," = ",Arab2Rim(NI)," back ", Rim2Arab(Arab2Rim(NI) ) ); finir. Fonction de conversion arabe vers romain en Pascal function Arab2Roman(arab:integer):string; var i :entier ; d : entier ; arab_str:string; arab_len:entier; début Résultat := "" ; arab_str:= IntToStr(arabe); arab_len:= Longueur(arab_str); for i:= 0 to arab_len-1 do begin d:= StrToInt(String(arab_str)); si (d+1) mod 5 = 0 alors Résultat := Copie("IXCM", 1+i, 1) + Copie("VXLCDM", i*2 + (d+1) div 5, 1) + Résultat sinon Résultat := Copie("VLD", 1+i, d div 5) + Copie("IIIXXXCCCMMM", 1+i*3, d mod 5) + Résultat ; finir; finir;
Une caractéristique distinctive de cet algorithme est qu'il n'utilise pas de tableaux (à moins, bien sûr, que la chaîne soit considérée comme un tableau de caractères).
Fonction BASIC de conversion de l'arabe vers le romain (code le plus court) 10 SAISIR "NOMBRE ARABE : " ; A$ 20 FOR I=0 TO LEN(A$)-1 30 X=VAL(MID$(A$,LEN(A$)-I,1)) 40 SI X=4 OU X=9 ALORS B$= MID$("IXCM",I+1,1)+MID$("VXLCDM",I*2+(X+1)/5,1)+B$ 50 IF X4 AND X case 1999) à roman sur XPath string-join(for $num in (1999) return (("","M","MM","MMM")[($num idiv 1000) mod 10+1], ( "","C", "CC","CCC","CD","D","DC","DCC","DCCC","CM")[($num idiv 100) mod 10+1 ], (""," X","XX","XXX","XL","L","LX","LXX","LXXX","XC")[($num idiv 10) mod 10+1], (" ","I","II","III","IV","V","VI","VII","VIII","IX")[$num mod 10 +1]), "" ) Une fonction pour convertir un nombre arabe (dans ce cas 1999) en un nombre romain en Perl use strict; utiliser des avertissements ; mon $n = 1999 ; mes $nums = [ ["", qw(I II III IV V VI VII VIII IX) ], ["", qw(X XX XXX XL L LX LXX LXXX XC) ], ["", qw(C CC CCC CD D DC DCC DCCC CM) ], ["", qw(M MM MMM) ] ] ; mon $i = 0 ; ma @res = (); push @res, ($nums->[$i++][ ($n % 10, $n = int($n / 10)) ]) for 0 .. 3; impression inverse @res ; Classe pour convertir un nombre arabe (de 1 à 3999) en nombre romain en classe Java ArabRome ( private int arabBase = (1000, 500, 100, 50, 10, 5, 1); private String romeBase = ("M", "D " , "C", "L", "X", "V", "I"); public String ArabToRome(int arab) ( int result = 0; int rest = 0; String resultRome = ""; for(short i = 0 ; i0 && result=4 && result Classe d'extension pour convertir les nombres romains en arabe et vice versa, sur CSharp /// /// La classe est destinée à convertir les nombres arabes en nombres romains et vice versa /// // / /// La classe contenait à l'origine un alphabet de chiffres romains capable de définir des chiffres arabes de 1 à 39999 /// Si vous avez besoin d'étendre la plage, vous pouvez définir une notation supplémentaire pour les chiffres romains en utilisant /// les chiffres romains de base field public static class Roman Number ( /// /// Basic Roman Numbers Alphabet numbers /// L'alphabet est construit sous la forme d'un dictionnaire. La clé du dictionnaire est un nombre arabe (int), la valeur est son correspondant /// nombre romain (chaîne) t Notation romaine pour les nombres arabes 1*,4*,5*,9* - où "*" représente 0...N zéros /// Lorsqu'il est créé, il contient la notation des nombres de 1 à 10000 (I... ↂ) Étant donné qu'un caractère ne peut pas /// apparaître plus de trois fois dans un nombre romain, vous pouvez d'abord convertir les nombres de 1 à 39999 au format romain. /// Si vous souhaitez pouvoir travailler avec un grand nombre de nombres romains , alors vous devez ajouter à la liste /// des désignations supplémentaires à partir de 40000 sans sauter les éléments 1*,4*,5*,9*. /// public static SortedList BasicRomanNumbers ( get; set; ) static RomanNumber() ( BasicRomanNumbers = new SortedList(17); BasicRomanNumbers.Add(1, "I"); BasicRomanNumbers.Add(4, "IV"); BasicRomanNumbers. Add(5, "V"); Basic Roman Numbers.Add(9, "IX"); Basic Roman Numbers.Add(10, "X"); Basic Roman Numbers.Add(40, "XL"); Basic Roman Numbers.Add(10, "X"); Basic Roman Numbers.Add(40, "XL"); Numbers.Add(50, "L"); BaseRomanNumbers.Add(90, "XC"); BaseRomanNumbers.Add(100, "C"); BaseRomanNumbers.Add(400, "CD"); BaseRomanNumbers.Add(500, "D"); BaseRomanNumbers.Add (900, "CM"); Basic Roman Numbers.Add(1000, "M"); Basic Roman Numbers.Add(4000, "Mↁ"); Basic Roman Numbers.Add(5000, "ↁ"); Basic Roman Numbers.Add(9000, "Mↂ" ); BasicRomanNumbers.Add(10000, "ↂ"); ) /// /// Calcule le nombre romain maximum possible pour l'alphabet de chiffres romains actuel. /// /// Nombre romain maximal possible public static uint MaximumRomanNumber() ( int lastNumber = BasicRomanNumbers.Keys.Last(); int numberWithoutZeros = int.Parse(lastNumber.ToString().Replace("0","\0 ")); int tentative=0 ; switch(NumberNoZeros) ( cas 1 : tentative = lastNumber * 4 - 1 ; break ; cas 4 : cas 9 : tentative = lastNumber ; break ; cas 5 : tentative = lastNumber + lastNumber / 5 * 3 ; break ; par défaut : break ; ) return uint.Parse(pre.ToString().Replace("0", "9"));; ) /// /// Convertit un entier en chiffre romain /// / / / Nombre arabe à convertir en notation romaine /// Généré lorsqu'un nombre égal à "0" /// ou supérieur au nombre romain maximum est passé en paramètre. /// Une chaîne représentant un nombre romain public static string ArabicRoman(this int numberArab) ( StringBuilder numberRoman = new StringBuilder(); //Exclure le signe "-" du nombre arabe et en faire le premier caractère du nombre romain si (nombrearabe< 0) { числоРимское.Append("-"); числоАраб = -числоАраб; } if (числоАраб == 0) throw new ArgumentOutOfRangeException("числоАраб", числоАраб, "Недопустимое значение аргумента: римские числа не могут быть равными\"0\""); else if (числоАраб >MaxRomanNumber()) throw new ArgumentOutOfRangeException("numberArab", numberArab, string.Format("Valeur d'argument non valide : impossible de définir un nombre romain supérieur à (0)", MaxRomanNumber())); // Décomposer le nombre arabe en ses nombres romains constitutifs et les combiner en une seule chaîne var requiredBasicRomanNumbers = from to in BasicRomanNumbers.Keys where k = 1) ( numberArab -= current; numberRoman.Append(BasicRomanNumbers[current]); ) ) return nombreRoman .ToString(); ) /// /// Convertit un nombre romain en arabe /// /// Un nombre romain à convertir en un type int /// Généré lorsqu'un nombre non romain est passé en paramètre /// Un entier représentant la notation arabe nombre romain public statique int romain vers arabe (cette chaîne nombre romain) ( int nombre arabe = 0 ; sbyte négatif = 1 ; chaîne roman = nombre romain.Trim(); if (roman == "-") ( négatif = -1; roman = roman.Substring(1); ) Modèle StringBuilder RomanNumber = new StringBuilder(); foreach (int to in BaseRomanNumbers.Keys) ( int index = BaseRomanNumbers.Keys.IndexOf(to); string quantifier="? "; if (index == 0 | |(index % 4) == 0) quantifier="(0,3)";RomanNumber template.Insert(0, string.Format("(?((1))(2 ))?", to.ToString() , BaseRomanNumbers[k], quantifier)); ) //Ignorer la casse + la correspondance doit commencer au début de la chaîne patternRomanNumbers.Insert(0, "(?i)^"); //La correspondance doit être trouvée à la fin de la chaîne patternP ImskogoNumber.Append("$"); // Vérification simplifiée. Ne vérifie pas les erreurs telles que IVII if (!Regex.IsMatch(Roman, RomanNumber template.ToString())) throw new FormatException(string.Format("Text \"(0)\" is not a Roman number",Roman Numéro)); Numéro de correspondance = Regex.Match(Roman, RomanNumber template.ToString()); foreach (int to in BaseRomanNumbers.Keys) ( numberArab += number.Groups[to.ToString()].Length / BaseRomanNumbers[to].Length * to; ) return numberArab * negative; ) )
Remarques
- Norme Unicode, 15.3
- 1 2 Formes numériques Unicode
- Perry, David J. Proposition d'ajouter des caractères romains antiques supplémentaires à UCS.
- Pour les deux premières lignes
- "Science et Vie" N12 1986 p.95, V. Ptitsyn, Moscou
- Auteur - Kuznetsov Evgeny A.
- Auteur - Evgeny A. Kuznetsov, 1992
voir également
- Symboles des anciennes unités monétaires et de poids romaines
- Nombres
- Systèmes de numération
Que signifient les lettres romaines L C D M ?
Ce sont des chiffres ! - dans le système de numérotation romain, basé sur l'utilisation de lettres latines, est devenu l'une des bonnes raisons de le remplacer par un système de numérotation décimale plus pratique à cet égard
Dans l'ordre croissant, ces lettres représentent les nombres entiers suivants : I - un, V - cinq, X - dix, L - cinquante, C - cent, D - cinq cents, M - mille.
chiffres romains
Le système de numérotation romain utilisant des lettres est courant en Europe depuis deux mille ans. Ce n'est qu'à la fin du Moyen Âge qu'il a été remplacé par un plus pratique pour les calculs système décimal nombres empruntés aux Arabes. Mais, jusqu'à présent, les chiffres romains désignaient les dates sur les monuments, l'heure sur les horloges et (dans la tradition typographique anglo-américaine) les pages des préfaces de livres. De plus, en russe, il est d'usage de désigner les nombres ordinaux par des chiffres romains.
Pour désigner les nombres, 7 lettres de l'alphabet latin ont été utilisées : I = 1, V = 5, X = 10, L = 50, C = 100, D = 500, M = 1000. Des nombres intermédiaires ont été formés en ajoutant plusieurs lettres à la droite ou la gauche. D'abord, des milliers et des centaines ont été écrits, puis des dizaines et des unités. Ainsi, le nombre 24 a été représenté comme XXIV. Ligne horizontale au-dessus du symbole signifiait multiplication par mille.
Les nombres naturels s'écrivent en répétant ces chiffres. En même temps, si un grand nombre est devant un plus petit, alors ils sont ajoutés (principe de l'addition), si le plus petit est devant le plus grand, alors le plus petit est soustrait du plus grand (principe de soustraction). La dernière règle s'applique uniquement pour éviter la quadruple répétition d'une même figure. Par exemple, I, X, C sont placés respectivement devant X, C, M pour désigner 9, 90, 900 ou devant V, L, D pour désigner 4, 40, 400. Par exemple, VI \u003d 5 + 1 \u003d 6, IV \u003d 5 - 1 = 4 (au lieu de IIII). XIX = 10 + 10 - 1 = 19 (au lieu de XVIIII), XL = 50 - 10 = 40 (au lieu de XXXX), XXXIII = 10 + 10 + 10 + 1 + 1 + 1 = 33, etc.
Effectuer des opérations arithmétiques sur nombres à plusieurs chiffres cette entrée est très gênante. Le système des chiffres romains n'est pas utilisé actuellement, à l'exception, dans certains cas, de la désignation des siècles (XVe siècle, etc.), des années de notre ère. e. (MCMLXXVII etc.) et les mois en indiquant les dates (par exemple, 1. V.1975), les nombres ordinaux, et parfois les dérivés de petits ordres, supérieurs à trois : yIV, yV, etc.
Comment s'écrivent les chiffres romains ? -//elhow.ru/ucheba/matematika/kak-pishutsja-rimskie-cifry
.437000.ru/info/rim.php
__________________________
L'alphabet latin s'est isolé vers le 7ème siècle avant JC. e. et ne comprenait à l'origine que 21 lettres : A, B, C, D, E, F, Z, H, I, K, L, M, N, O, P, Q, R, S, T, V et X.
://ladyretryka.ru/?p=10980
A quel nombre correspond le chiffre romain M ?
A quel nombre correspond le chiffre romain M ?
Alsu - sh
J'ai déjà répondu à une question similaire (voir ici). Brièvement, je voudrais répondre à celle-ci.
je répète un peu.
Les chiffres romains, et il n'y en a que 7, sont faciles à retenir. Voici les lettres de ces chiffres par ordre décroissant : M, D, C, L, X, V, I :
Comme on le voit, Le chiffre romain, qui est la lettre majuscule M, représente le nombre 1000.
Nous donnons maintenant des exemples de nombres écrits en chiffres romains :
Écrivons maintenant :
Le numéro de cette année 2015 , par exemple, s'écrirait ainsi : ММХV
1941 - MSMXXXXXXI
1945 - MCMXXXXXXV
2987 - MMCMLXXXVII
2001 - IMM
Zolotynka
Si le chiffre romain M est seul, alors sa valeur sera 1000.
Mais : si M est précédé d'un nombre plus petit, comme, par exemple, dans cet exemple, CM, alors cela signifiera : 1000-100=900.
Si C vient après M, alors vous devez ajouter, donc la valeur est 1000 + 100 = 1010.
C, comme nous nous en souvenons, signifie cent.
Règles principales : vous ne pouvez pas mettre plus d'un nombre plus petit avant un nombre plus grand pour la soustraction. Ainsi, VII ne signifie pas 3.
Aussi, séparez les dizaines, les centaines et les milliers comme éléments individuels(le plus petit nombre ne peut pas différer du plus grand de plus de 10 fois). Cela signifie que 99 est XCIX, 90 + 9, mais ne peut jamais être écrit sous la forme IC. De même, 999 ne peut pas être un IM, et 1999 ne peut pas être un MIM, et ainsi de suite.
Natashau
Nous sommes habitués à utiliser des chiffres arabes. Mais les romains existent toujours et sont largement utilisés, qui ont déjà près de deux mille cinq cents ans. Les chiffres romains sont représentés par des lettres. Il n'y a que sept lettres de ce type : I, V, X, L, C, D, M. Leur emplacement spécifique indique le nombre. Si ces nombres sont situés séparément du reste, ils ont les valeurs suivantes : I - 1, V - 5, X - 10, L - 50, C - 100, D - 500, M - 1000.
Belle clairière
Le chiffre romain M (alias lettre) signifie nombre 1000 .
Dans le calcul romain, très peu de lettres sont utilisées pour écrire des nombres, il n'y en a que 7. Mais pour écrire de grands nombres en lettres romaines, vous devez ajouter et soustraire un nombre d'un autre, ce qui n'est pas si facile sans pratique.
En arabe, 10 caractères sont utilisés pour désigner des nombres et ils peuvent écrire n'importe quel nombre sans opérations mathématiques.
La lettre latine M en chiffres romains signifie "mille", du latin mille..
Et maintenant, ce préfixe est largement utilisé, par exemple, ppm - littéralement "de mille", et le mot "million" vient également de là, traduit littéralement "un énorme mille", "mille", et c'est intéressant comment ce mot est apparu, mais c'est une autre histoire ..
Athanase44
Les chiffres romains sont maintenant rarement utilisés partout ; ils ont été supplantés par des chiffres arabes plus pratiques. Fondamentalement, ils sont utilisés pour nommer des siècles, par exemple, le 5ème siècle, le 12ème siècle, et même dans de rares cas.
La lettre M était le mot romain pour mille. Deux lettres adjacentes MM signifient deux mille, MMM trois mille, puis encore plus difficile et amusant.
Moreljuba
Le chiffre romain M, bien sûr, nous est familier en tant que lettre, mais dans le système de chiffres romains, il s'agit toujours d'un nombre. Cela signifie donc exactement mille. et il provient d'un chiffre romain d'un mot latin tel que mille.
Ludmila 1986
Les anciens Romains utilisaient les lettres de l'alphabet latin pour représenter les nombres. Les chiffres romains sont apparus vers 500 av.
Dans de nombreuses langues, les chiffres romains sont utilisés pour enregistrer le numéro du siècle (millénaire), marquer les cadrans, dans l'analyse mathématique, les événements importants.
abeille bourdonnante
Roman L, C, D, M ne sont pas aussi courants que les autres, M signifie le nombre 1000, MM signifie 2000 et MMM signifie 3000.
Par exemple, l'année 2017 sera désignée par les chiffres romains MMXVII, 2018 par les chiffres romains MMXVIII.
Pour indiquer des nombres dans Latin les combinaisons des sept caractères suivants sont acceptées : I (1), V (5), X (10), L (50), C (100), D (500), M (1000).
Pour mémoriser les désignations de lettres des nombres dans l'ordre décroissant, une règle mnémotechnique a été inventée :
M s ré arim À PARTIR DE face à face L l'imonie, X vatité V Sem je x (respectivement M, D, C, L, X, V, I).
Si le signe indiquant un nombre plus petit est à droite du signe indiquant un nombre plus grand, alors le plus petit nombre doit être ajouté au plus grand, s'il est à gauche, puis soustraire, à savoir :
VI - 6, c'est-à-dire 5+1
IV - 4, c'est-à-dire 5 - 1
XI - 11, c'est-à-dire 10+1
IX - 9, c'est-à-dire 10 - 1
LX - 60, c'est-à-dire 50+10
XL - 40, c'est-à-dire 50 - 10
CX - 110, c'est-à-dire 100+10
XC - 90, c'est-à-dire 100-10
MDCCCXII - 1812, c'est-à-dire 1000 + 500 + 100 + 100 + 100 + 10 + 1 + 1.
Il peut y avoir différentes significations pour un même nombre. Par exemple, le nombre 80 peut être noté LXXX (50 + 10 + 10 + 10) et XXC (100 - 20).
Pour écrire des nombres en chiffres romains, vous devez d'abord écrire le nombre de milliers, puis de centaines, puis de dizaines et enfin d'unités.
Je (1) - unus (unus)
II (2) - duo (duo)
III (3) - tres (tres)
IV (4) - quattuor (quattuor)
V (5) - quinqué (quinqué)
VI (6) - sexe (sexe)
VII (7) - septera (septembre)
VIII (8) - octo (octo)
IX (9) - novème (novème)
X (10) - décem (décem)
XI (11) - indécim (indécim)
XII (12) - duodécim (duodécim)
ХШ (13) - tredécim (trédécim)
XIV (14) - quattuordécim (quattuordécim)
XV (15) - quindécim (quindécim)
XVI (16) - sedecim (sedecim)
XVII (17) - septendecim (septendecim)
XVIII (18) - duodeviginti (duodeviginti)
XIX (19) - undeviginti (undeviginti)
XX (20) - viginti (viginti)
XXI (21) - unus et viginti ou viginti unus
XXII (22) - duo et viginti ou viginti duo, etc.
XXVIII (28) - duodetriginta (duodetriginta)
XXIX (29) - undetriginta (undetriginta)
XXX (30): triginta (triginta)
XL (40) - quadraginta (quadraginta)
L (5O) - quinquaginta (quinquaginta)
LX (60) - sexaginta (sexaginta)
LXX (70) - septuaginta (szltuaginta)
LXXX180) - octoginte (octoginte)
KS (90) - nonaginta (nonaginta)
C (100) centum (centum)
CC (200) - ducenti (ducenti)
CCC (300) - trecenti (trecenti)
CD (400) - quadrigenti (quadrigenti)
D (500) - quingenti (quingenti)
DC (600) - sescenti (sessenti) ou sexonti (sekstsenti)
DCC (700) - septigenti (septigenti)
DCCC (800) - octingenti (octingenti)
CV (DCCC) (900) - nongenti (nongenti)
M (1000) - mille (mille)
MM (2000) - duo milia (duo milia)
V (5000) - quinque milla (quinque milla)
X (10 000) - milia décem (milia décem)
XX (20000) - viginti milia (viginti milia)
C (100000) - centum milia (centum milia)
XI (1000000) - decies centena milia (decies centena milia).
Si tout à coup une personne curieuse demande pourquoi les lettres latines V, L, C, D, M ont été choisies pour désigner les nombres 50, 100, 500 et 1000, alors nous dirons immédiatement que ce ne sont pas du tout des lettres latines, mais complètement différentes personnages.
Le fait est que l'alphabet grec occidental a servi de base à l'alphabet latin. C'est à lui que remontent les trois signes L, C et M. Ils désignaient ici des sons aspirés, qui n'étaient pas dans la langue latine. Lors de la formation de l'alphabet latin, ce sont eux qui se sont avérés superflus. Ils ont été adaptés pour désigner les nombres dans l'écriture latine. Plus tard, leur orthographe a coïncidé avec les lettres latines. Ainsi, le signe C (100) est devenu similaire à la première lettre du mot latin centum (cent) et M (1000) - à la première lettre du mot mille (mille). Quant au signe D (500), c'était la moitié du signe F (1000), puis il est devenu comme une lettre latine. Le signe V (5) n'était que la moitié supérieure du signe X (10).
C'est toute l'histoire avec ces chiffres romains.
Tâche de consolider le matériel couvert
Faites attention à la désignation de trois dates. Ici, les années de naissance d'Alexandre Pouchkine, d'Alexandre Herzen et d'Alexandre Blok sont chiffrées en chiffres romains. Décidez vous-même à quelle date appartient Alexandre.
MDCCXH
MDCCXCIX
MDCCCLXXX
chiffres romains
1 | je | lat. unus, unum |
5 | V | lat. quinqué |
10 | X | lat. décem |
50 | L | lat. quinquaginta |
100 | C | lat. pour cent |
500 | ré | lat. quingenti |
1000 | M | lat. mille |
En russe, il existe des règles mnémoniques pour fixer les désignations alphabétiques des nombres par ordre décroissant :
M s ré arim À PARTIR DE face à face L l'imonie, X vatité V Sem je X.
M s ré nous mangeons C conseil L ish X d'accord V bien élevé je personnes
Respectivement M, D, C, L, X, V, I
Nombre | Désignation |
---|---|
1 | je |
2 | II |
3 | III |
4 | IV, jusqu'au XIX siècle - III |
5 | V |
6 | VI |
7 | VII |
8 | VIII (parfois - IIX) |
9 | IX (parfois - VIIII) |
10 | X |
20 | XX |
30 | xxx |
40 | XL |
50 | L |
60 | LX |
70 | LXX |
80 | LXXX |
90 | XC |
100 | C |
200 | CC |
300 | CCC |
400 | CD |
500 | RÉ; IƆ |
600 | CC ; IƆC |
700 | CDC ; IƆCC |
800 | DCCC ; IƆCCC |
900 | CM; CCIƆ |
1 000 | M; ↀ ; CIƆ |
2 000 | MM ; CIƆCIƆ |
3 000 | MMM ; CIƆCIƆCIƆ |
3 999 | MMMCMXCIX |
4 000 | MV ; ↀↁ ; CIƆIƆƆ |
5 000 | V ; ↁ ; IƆƆ |
6 000 | MV ; ↁↀ ; IƆƆCIƆ |
7 000 | VMM ; ↁↀↀ ; IƆƆCIƆCIƆ |
8 000 | VMMM; ↁↀↀↀ ; IƆƆCIƆCIƆCIƆ |
9 000 | IX; ↀↂ ; CIƆCCIƆƆ |
10 000 | X; ↂ ; CCIƆƆ |
20 000 | XX ; ↂↂ; CCIƆƆCCIƆƆ |
30 000 | XXXX ; ↂↂↂ; CCIƆƆCCIƆƆCCIƆƆ |
40 000 | XL ; ↂↇ ; CCIƆƆƆƆƆ |
50 000 | L; ↇ ; IƆƆƆ |
60 000 | LX; ↇↂ ; IƆƆƆCCIƆƆ |
70 000 | LXX; ↇↂↂ ; IƆƆƆCCIƆƆCCIƆƆ |
80 000 | LXXX ; ↇↂↂↂ ; IƆƆƆCCIƆƆCCIƆƆCCIƆƆ |
90 000 | XC ; ↂↈ ; CCIƆƆCCCIƆƆƆ |
100 000 | C; ↈ ; CCCIƆƆƆ |
200 000 | CC ; ↈↈ ; CCCIƆƆƆCCCIƆƆƆ |
300 000 | CCC ; ↈↈↈ ; CCCIƆƆƆCCCIƆƆƆCCCIƆƆƆ |
400 000 | CD ; CCCIƆƆƆIƆƆƆƆ |
500 000 | RÉ; IƆƆƆƆ |
600 000 | CC ; IƆƆƆƆCCCIƆƆƆ |
700 000 | CDC ; IƆƆƆƆCCCIƆƆƆCCCIƆƆƆ |
800 000 | DCCC ; IƆƆƆƆCCCIƆƆƆCCCIƆƆƆCCCIƆƆƆ |
900 000 | CM; C je ; CCCIƆƆƆCCCCIƆƆƆƆ |
1 000 000 | M; JE; CCCCIƆƆƆƆ |
Pour écrire correctement de grands nombres en chiffres romains, vous devez d'abord écrire le nombre de milliers, puis de centaines, puis de dizaines et enfin d'unités.
Dans ce cas, certains des nombres (I, X, C, M) peuvent être répétés, mais pas plus de trois fois de suite; ainsi, ils peuvent être utilisés pour écrire n'importe quel entier pas plus de 3999(MMMCMXCIX). Dans les premières périodes, il y avait des signes pour indiquer des nombres plus grands - 5000, 10 000, 50 000 et 100 000 (alors le nombre maximum selon la règle mentionnée est de 399 999). Lorsque vous écrivez des nombres dans le système de chiffres romains, le plus petit chiffre peut être à droite du plus grand; dans ce cas, il lui est ajouté. Par exemple, le nombre 283 en romain s'écrit CCLXXXIII, c'est-à-dire 100+100+50+30+3=283. Ici, le nombre représentant cent est répété deux fois, et les nombres représentant dix et un, respectivement, sont répétés trois fois.
Exemple : nombre 1988. Mille M, neuf cents CM, huit dizaines LXXX, huit unités VIII. Écrivons-les ensemble : MCMLXXXVIII.
Assez souvent, pour mettre en évidence les nombres dans le texte, une ligne était tracée dessus : LXIV. Parfois, la ligne était tracée à la fois au-dessus et au-dessous : XXXII- en particulier, il est d'usage de surligner les chiffres romains dans le texte manuscrit russe (cela n'est pas utilisé dans la composition typographique en raison de la complexité technique). Pour d'autres auteurs, le surlignage pourrait indiquer une augmentation de la valeur du chiffre de 1000 fois : V = 5000.
Ce n'est qu'au 19e siècle que le nombre « quatre » s'écrit « IV » partout, avant cela l'inscription « IIII » était le plus souvent utilisée. Cependant, l'inscription "IV" se trouve déjà dans les documents du manuscrit "Forme de Cury" datant de 1390. Les cadrans de montres utilisent traditionnellement "IIII" au lieu de "IV" dans la plupart des cas, principalement pour des raisons esthétiques : cette orthographe offre une symétrie visuelle avec les chiffres "VIII" sur le côté opposé, et le "IV" inversé est plus difficile à lire que "IIII". Il existe également une version où IV n'était pas écrit sur le cadran car IV est la première lettre du nom du dieu Jupiter (IVPITER).
Le plus petit nombre peut être écrit à gauche du plus grand, puis il doit être soustrait du plus grand. Dans ce cas, seuls les nombres indiquant 1 ou des puissances de 10 peuvent être soustraits, et seuls les deux nombres les plus proches de la série de nombres au soustrait (c'est-à-dire le soustrait, multiplié par 5 ou 10) peuvent agir comme une diminution. Les répétitions d'un nombre inférieur ne sont pas autorisées. Ainsi, il y a seulement six options en utilisant la "règle de soustraction":
- IV = 4
- IX = 9
- XL=40
- XC = 90
- CD=400
- CM=900
Par exemple, le nombre 94 sera XCIV \u003d 100 - 10 + 5 - 1 \u003d 94 - la soi-disant "règle de soustraction" (apparue à l'époque de l'Antiquité tardive, et avant cela, les Romains écrivaient le chiffre 4 comme IIII , et le nombre 40 comme XXXX).
Il convient de noter que les autres méthodes de "soustraction" ne sont pas autorisées ; ainsi, le nombre 99 doit être écrit comme XCIX, mais pas comme IC. Cependant, de nos jours, dans certains cas, une notation simplifiée des nombres romains est également utilisée : par exemple, dans Microsoft Excel, lors de la conversion de chiffres arabes en chiffres romains à l'aide de la fonction « ROMAN () », vous pouvez utiliser plusieurs types de représentation des nombres, du classique au très simplifié (par exemple, le nombre 499 peut s'écrire CDXCIX, LDVLIV, XDIX, VDIV ou ID). La simplification est que pour réduire n'importe quel chiffre, n'importe quel autre chiffre peut être écrit à sa gauche :
- 999. Mille (M), soustrayez 1 (I), obtenez 999 (IM) au lieu de CMXCIX. Conséquence : 1999 - MIM au lieu de MCMXCIX
- 95. Cent (C), soustrayez 5 (V), obtenez 95 (VC) au lieu de XCV
- 1950 : Mille (M), soustrayez 50 (L), on obtient 950 (LM). Conséquence : 1950 - MLM au lieu de MCML
Les chiffres romains peuvent également être utilisés pour écrire de grands nombres. Pour ce faire, une ligne est placée au-dessus des nombres qui représentent des milliers, et une double ligne est placée au-dessus des nombres qui représentent des millions. Par exemple, le numéro 123123 ressemblerait à ceci :
CXXIIICXXIII
Et un million c'est comme moi, mais pas avec un, mais avec deux traits en tête : je
Application
Expressions régulières
L'expression régulière pour vérifier les chiffres romains est ^(M(0,3))(D?C(0,3)|C)(L?X(0,3)|X)(V?I(0,3) | I)$ En Perl, vous pouvez utiliser l'expression régulière m/\b((?:M(0,3)?(?:D?C(0,3)|C)?(?:L ?X( 0,3)|X)?(?:I(0,3)?V?I(0,3)|I)))\b/gs .
transformation
Pour convertir des nombres écrits en chiffres arabes en chiffres romains, des fonctions spéciales sont utilisées. Par exemple, dans la version russe de Microsoft Excel, il existe une fonction pour cela ROMAIN(argument), dans la version anglaise de Microsoft Excel et dans n'importe quelle version d'OpenOffice.org Calc, cette fonction est appelée ROMAIN(argument).
Fonctions de transformation JavaScript
var arabe = ; var romain = ["I","IV","V","IX","X","XL","L","XC","C","CD","D","CM ","M"] ; function arabToRoman(number) ( if(!number) return ""; var ret = ""; var i = arab.length - 1; while(number > 0) ( if(number >= arab[i]) ( ret + = roman[i]; nombre -= arab[i]; ) else ( i--; ) ) return ret; ) function romanToArab(str) ( str = str.toUpperCase(); var ret = 0; var i = arab .length - 1;var pos = 0;while(i >= 0 && pos< str.length) { if(str.substr(pos, roman[i].length) == roman[i]) { ret += arab[i]; pos += roman[i].length; } else { i--; } } return ret; }
Fonctions similaires en C (C89) :
#comprendre
tapez str2 = chaîne ; const Jantes : tableau de str2 = ("M","CM","D","CD","C","XC","L","XL","X","IX","V ","IV","je",""); Arabe : tableau d'entiers = (1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1, 0) ; var N, NI, I, J : entier ; S :chaîne fonction Arab2Rim(N : entier) : chaîne ; varS:chaîne; je : entier commenceS:="" ; I :=1 ; tandis que N > 0 commencent tant que Arab[I]<=N do begin S:= S + Rims[I]; N:= N - Arab[I] end; I:=I+1 end; Arab2Rim:= S end; function Rim2Arab (S:string) : integer; var I, N: integer; begin I:=1; N:= 0; while S<>"" do begin while Rims[I] = Copy(S, 1, Length(Rims[I])) do begin S:= Copy(S, 1+Length(Rims[I]), 255); N := N + arabe[I]fin ; je :=je+1fin ; Rim2Arab:= Nend ; begin WriteLn("Traduction de l'arabe aux chiffres romains. 1999 B_SA"); ( Write("Entrez un nombre à convertir :"); ReadLn(N);) for NI:= 26 to 46 do WriteLn(NI," = ",Arab2Rim(NI)," back ", Rim2Arab(Arab2Rim(NI) ) ); finir.
fonction Arab2Roman(arabe:entier):string; var i :entier ; d : entier ; arab_str:string; arab_len:entier; début Résultat := "" ; arab_str:= IntToStr(arabe); arab_len:= Longueur(arab_str); for i:= 0 to arab_len-1 do begin d:= StrToInt(String(arab_str)); si (d+1) mod 5 = 0 alors Résultat := Copie("IXCM", 1+i, 1) + Copie("VXLCDM", i*2 + (d+1) div 5, 1) + Résultat sinon Résultat := Copie("VLD", 1+i, d div 5) + Copie("IIIXXXCCCMMM", 1+i*3, (d mod 5)/2) + Résultat ; finir; finir;
Une caractéristique distinctive de cet algorithme est qu'il n'utilise pas de tableaux (à moins, bien sûr, que la chaîne soit considérée comme un tableau de caractères).
10 SAISIR "NOMBRE ARABE : " ; A$ 20 FOR I=0 TO LEN(A$)-1 30 X=VAL(MID$(A$,LEN(A$)-I,1)) 40 SI X=4 OU X=9 ALORS B$= MID$("IXCM",I+1,1)+MID$("VXLCDM",I*2+(X+1)/5,1)+B$ 50 SI X<4 THEN B$=MID$("IIIXXXCCCMMM",1+I*3,X)+B$ ELSE IF X>4 ET X<9 THEN B$=MID$("VLD",I+1,1)+MID$("IIIXXXCCCMMM",1+I*3,X-5)+B$ 60 NEXT I 70 PRINT "РИМСКОЕ ЧИСЛО: "; B$
string-join(for $num in (1999) return (("","M","MM","MMM")[($num idiv 1000) mod 10+1], ("","C", "CC","CCC","CD","D","DC","DCC","DCCC","CM")[($num idiv 100) mod 10+1], (""," X","XX","XXX","XL","L","LX","LXX","LXXX","XC")[($num idiv 10) mod 10+1], (" ","I","II","III","IV","V","VI","VII","VIII","IX")[$num mod 10+1]), "" )
utiliser strict ; utiliser des avertissements ; mon $n = 1999 ; mes $nums = [ ["", qw(I II III IV V VI VII VIII IX) ], ["", qw(X XX XXX XL L LX LXX LXXX XC) ], ["", qw(C CC CCC CD D DC DCC DCCC CM) ], ["", qw(M MM MMM) ] ] ; mon $i = 0 ; ma @res = (); push @res, ($nums->[$i++][ ($n % 10, $n = int($n / 10)) ]) for 0 .. 3; impression inverse @res ;
importer java.util.* ; public class IntegerConverter ( public static String intToRoman(int nombre) ( if (nombre >= 4000 || nombre<= 0)
return null;
StringBuilder result = new StringBuilder();
Iterator
///
Donnez votre avis sur l'article "Chiffres romains"
Remarques
voir également
Remarque technique : En raison de limitations techniques, certains navigateurs peuvent ne pas afficher les caractères spéciaux utilisés dans cet article. Ces caractères peuvent apparaître sous forme de cases, de points d'interrogation ou d'autres caractères sans signification, selon votre navigateur Web, votre système d'exploitation et les polices installées. Même si votre navigateur est capable d'interpréter UTF-8 et que vous avez installé une police prenant en charge une large gamme d'Unicode , telle que Code2000 , Arial Unicode MS , Lucida Sans Unicode ou l'une des polices Unicode gratuites, vous devrez peut-être utiliser un navigateur différent, car les capacités des navigateurs dans ce domaine sont souvent différentes.
Un extrait caractérisant les chiffres romains
"Je pense souvent que c'est peut-être un péché", a déclaré la princesse, "mais je pense souvent: le comte Kirill Vladimirovitch Bezukhoy vit seul ... c'est une énorme fortune ... et pour quoi vit-il? La vie est un fardeau pour lui et Borya commence tout juste à vivre."Il laissera probablement quelque chose à Boris", a déclaré la comtesse.
« Dieu sait, chère amie ! » [cher ami!] Ces gens riches et ces nobles sont si égoïstes. Mais tout de même, je vais aller le voir maintenant avec Boris et lui dire tout de suite ce qui se passe. Qu'ils pensent ce qu'ils veulent de moi, peu m'importe quand le sort de mon fils en dépend. La princesse se leva. "Maintenant, il est deux heures, et à quatre heures, vous dînez." Je peux y aller.
Et avec les manières d'une femme d'affaires de Pétersbourg qui sait utiliser le temps, Anna Mikhailovna a fait venir son fils et est sortie avec lui dans la salle.
« Adieu, mon âme, dit-elle à la comtesse qui l'accompagna jusqu'à la porte, souhaite-moi du succès », ajouta-t-elle dans un murmure de la part de son fils.
- Rendez-vous visite au comte Kirill Vladimirovitch, ma chérie ? dit le comte de la salle à manger en sortant également dans le vestibule. - S'il va mieux, appelle Pierre pour dîner avec moi. Après tout, il m'a rendu visite, a dansé avec les enfants. Appelez par tous les moyens, ma chère. Eh bien, voyons comment Taras excelle aujourd'hui. Il dit que le comte Orlov n'a jamais eu un tel dîner que nous aurons.
- Mon cher Boris, [Cher Boris,] - a déclaré la princesse Anna Mikhailovna à son fils, lorsque la voiture de la comtesse Rostova, dans laquelle ils étaient assis, roulait le long d'une rue couverte de paille et pénétrait dans la vaste cour du comte Kirill Vladimirovitch Bezukhoy . « Mon cher Boris, dit la mère en tirant sa main de dessous le vieux manteau et en la posant sur la main de son fils d'un geste timide et doux, sois gentille, sois attentive. Le comte Kirill Vladimirovitch est toujours votre parrain et votre destin futur dépend de lui. Souviens-toi de ceci, mon cher, sois gentil, comme tu sais l'être...
"Si seulement je savais qu'il en résulterait autre chose qu'une humiliation", répondit froidement le fils. « Mais je te l'ai promis et je le fais pour toi.
Malgré le fait que la voiture de quelqu'un se trouvait à l'entrée, le portier, regardant la mère et le fils (qui, sans donner l'ordre de se présenter, pénétrèrent directement dans le passage vitré entre deux rangées de statues dans des niches), jetant un coup d'œil significatif au vieil habit, demanda qui ils étaient, princes ou comte, et, ayant appris que c'était un comte, il dit que leur excellence est maintenant pire et que leur excellence ne reçoit personne.
« Nous pouvons partir », dit le fils en français.
- Mon ami! [Mon ami!] - dit la mère d'une voix implorante, touchant à nouveau la main de son fils, comme si ce contact pouvait le calmer ou l'exciter.
Boris se tut et, sans enlever son pardessus, regarda sa mère d'un air interrogateur.
"Ma chère", dit Anna Mikhailovna d'une voix douce en se tournant vers le portier, "je sais que le comte Kirill Vladimirovitch est très malade ... c'est pourquoi je suis venue ... je suis une parente ... je ne le ferai pas dérange, mon cher ... Mais j'ai juste besoin de voir le prince Vasily Sergeyevich: parce qu'il se tient ici. Signalez-le, s'il vous plaît.
Le portier tira la ficelle d'un air maussade et se détourna.
"La princesse Drubetskaya au prince Vasily Sergeevich", a-t-il crié à un serveur en bas, chaussures et queue de pie qui s'était précipité et avait jeté un coup d'œil sous le rebord de l'escalier.
Mère lissa les plis de sa robe de soie teinte, regarda dans le miroir vénitien d'une seule pièce dans le mur, et allègrement dans ses souliers usés monta le tapis de l'escalier.
- Mon cher, voue m "avez promis, [Mon ami, tu m'as promis,]" elle se tourna de nouveau vers le Fils, l'excitant d'un geste de la main.
Le fils, baissant les yeux, la suivit calmement.
Ils entrèrent dans la salle, d'où une porte conduisait aux chambres attribuées au prince Vasily.
Tandis que la mère et le fils, sortant au milieu de la pièce, avaient l'intention de demander leur chemin au vieux garçon qui se leva à leur entrée, une poignée de bronze tourna à l'une des portes et le prince Vasily en habit de velours, avec un star, à la maison, sortit, accompagnant le bel homme aux cheveux noirs. Cet homme était le célèbre médecin Lorrain de Saint-Pétersbourg.
- C'est donc positif ? [Alors, c'est ça ?] - dit le prince.
- Mon prince, "errare humanum est", mais ... [Prince, c'est la nature humaine de se tromper.] - répondit le médecin, saisissant et prononçant les mots latins avec un accent français.
- C "est bien, c" est bien ... [Bon, bon ...]
Remarquant Anna Mikhailovna avec son fils, le prince Vasily congédia le médecin en s'inclinant et silencieusement, mais avec un air interrogateur, s'approcha d'eux. Le fils remarqua à quel point une profonde tristesse s'exprima soudainement dans les yeux de sa mère et il sourit légèrement.
- Oui, dans quelles tristes circonstances nous avons dû nous voir, prince... Eh bien, qu'en est-il de notre cher patient ? dit-elle, comme si elle ne remarquait pas le regard froid et insultant fixé sur elle.
Le prince Vasily la regarda d'un air interrogateur, jusqu'à la perplexité, puis vers Boris. Boris s'inclina poliment. Le prince Vasily, ne répondant pas à la révérence, se tourna vers Anna Mikhailovna et répondit à sa question par un mouvement de la tête et des lèvres, ce qui signifiait le pire espoir pour le patient.
- Vraiment? s'exclama Anna Mikhailovna. - Ah, c'est horrible ! C'est terrible de penser… C'est mon fils », a-t-elle ajouté en désignant Boris. « Il voulait vous remercier lui-même.
Boris s'inclina de nouveau poliment.
« Croyez, prince, qu'un cœur de mère n'oubliera jamais ce que vous avez fait pour nous.
"Je suis heureux d'avoir pu vous plaire, ma chère Anna Mikhailovna", a déclaré le prince Vasily, redressant le volant et montrant par le geste et la voix ici à Moscou, devant la patronnée Anna Mikhailovna, une importance encore plus grande qu'à Saint-Pétersbourg, à la soirée chez Annette Scherer.
"Essayez de bien servir et d'être digne", a-t-il ajouté en s'adressant sévèrement à Boris. — Je suis content… Vous êtes ici en vacances ? dicta-t-il de son ton impassible.
"J'attends un ordre, Votre Excellence, pour aller vers une nouvelle destination", répondit Boris, ne montrant ni agacement face au ton aigu du prince, ni désir d'engager une conversation, mais si calmement et respectueusement que le prince regarda intensément sur lui.
- Vivez-vous avec votre mère ?
"Je vis avec la comtesse Rostova", a déclaré Boris, ajoutant à nouveau : "Votre Excellence."
"C'est l'Ilya Rostov qui a épousé Nathalie Shinshina", a déclaré Anna Mikhailovna.
"Je sais, je sais", a déclaré le prince Vasily de sa voix monotone. - Je n "ai jamais pu concevoir, comment Nathalieie s" est decidee a epouser cet ours mal - leche l Un personnage completement stupide et ridicule. Et joueur a ce qu "on dit. épouser cet ours sale. Personne complètement stupide et drôle. En plus d'un joueur, disent-ils.]
- Mais tres brave homme, mon prince, [Mais une personne gentille, prince,] remarqua Anna Mikhailovna en souriant avec émotion, comme si elle savait que le comte Rostov méritait une telle opinion, mais demanda à plaindre le pauvre vieil homme. - Que disent les médecins ? demanda la princesse, après une pause, et exprimant de nouveau une grande tristesse sur son visage taché de larmes.
"Il y a peu d'espoir", a déclaré le prince.
- Et je voulais tellement remercier encore mon oncle pour toutes ses bonnes actions envers moi et Borya. C'est son filleuil, [C'est son filleul,] - ajouta-t-elle sur un tel ton, comme si cette nouvelle devait extrêmement plaire au prince Vasily.
Le prince Vasily réfléchit un instant et grimaça. Anna Mikhailovna s'est rendu compte qu'il avait peur de trouver en elle une rivale selon la volonté du comte Bezukhoy. Elle s'empressa de le rassurer.
"S'il n'y avait pas mon véritable amour et mon dévouement envers mon oncle", dit-elle en prononçant ce mot avec une confiance et une insouciance particulières : "Je connais son caractère, noble, direct, mais après tout, seules les princesses sont avec lui. .. Ils sont encore jeunes... » Elle pencha la tête et elle ajouta dans un murmure : « A-t-il rempli son dernier devoir, prince ? Combien précieux sont ces derniers instants ! Après tout, ça ne pouvait pas être pire ; il doit être cuit si c'est si mauvais. Nous, les femmes, prince, sourit-elle tendrement, nous savons toujours dire ces choses. Vous devez le voir. Peu importe à quel point c'était dur pour moi, mais j'ai l'habitude de souffrir.
Le prince, apparemment, a compris, et a compris, comme il l'a fait lors de la soirée chez Annette Scherer, qu'il était difficile de se débarrasser d'Anna Mikhailovna.
"Cette rencontre ne serait pas difficile pour lui, chere Anna Mikhailovna", a-t-il déclaré. - Attendons le soir, les médecins ont promis une crise.
« Mais vous ne pouvez pas attendre, prince, en ce moment. Pensez, il u va du salut de son ame… Ah ! c "est terrible, les devoirs d" un chretien... [Pensez, il s'agit de sauver son âme ! Oh! c'est terrible, le devoir d'un chrétien…]
À partir de pièces intérieures La porte s'ouvrit, et une des princesses, les nièces du comte, entra, le visage sombre et froid, la taille longue et étonnamment disproportionnée avec ses jambes.
Le prince Vasily se tourna vers elle.
- Eh bien, qu'est-ce qu'il est?
- Tous les mêmes. Et comme vous le souhaitez, ce bruit ... - dit la princesse en regardant Anna Mikhailovna, comme si elle était une étrangère.
"Ah, chere, je ne vous reconnaissais pas, [Ah, ma chère, je ne vous ai pas reconnu", a déclaré Anna Mikhailovna avec un sourire heureux, s'approchant de la nièce du comte d'un pas léger. - Je viens d'arriver et je suis à vous pour vous aider à soigner mon oncle. J`imagine, combien vous avez souffert, avec participation roulant des yeux.
La princesse ne répondit rien, ne sourit même pas et sortit aussitôt. Anna Mikhailovna ôta ses gants et, dans une position conquise, s'installa sur un fauteuil, invitant le prince Vasily à s'asseoir à côté d'elle.
-Boris ! - dit-elle à son fils en souriant, - j'irai chez le comte, chez mon oncle, et tu vas chez Pierre, mon ami, pour le moment, n'oublie pas de lui donner une invitation des Rostov. Ils l'invitent à dîner. Je ne pense pas qu'il le fera? elle se tourna vers le prince.
"Au contraire", a déclaré le prince, apparemment mal à l'aise. – Je serais tres content si vous me debarrassez de ce jeune homme… [Je serais très heureux si vous vous débarrassiez de ce jeune homme…] Assis ici. Le comte n'a jamais posé de questions sur lui.
Il haussa les épaules. Le serveur conduisit le jeune homme dans un autre escalier jusqu'à Piotr Kirillovitch.
Pierre n'a pas réussi à choisir une carrière pour lui-même à Saint-Pétersbourg et, en effet, a été exilé à Moscou pour émeute. L'histoire racontée chez le comte Rostov était vraie. Pierre a participé à attacher le quartier avec un ours. Il est arrivé il y a quelques jours et est resté, comme toujours, chez son père. S'il supposait que son histoire était déjà connue à Moscou, et que les dames qui entouraient son père, toujours hostiles à son égard, profiteraient de cette occasion pour embêter le comte, il se rendit néanmoins chez la moitié de son père le jour de sa Arrivées. Entrant dans le salon, résidence habituelle des princesses, il salua les dames qui étaient assises devant le métier à broder et devant le livre que l'une d'elles lisait à haute voix. Il y avait trois. La fille aînée, propre, à la taille longue et stricte, la même qui est sortie chez Anna Mikhailovna, lisait; les plus jeunes, toutes rouges et jolies, ne différaient l'une de l'autre que par le fait que l'une avait un grain de beauté au-dessus de la lèvre, ce qui la rendait très jolie, cousue dans un cerceau. Pierre a été accueilli comme mort ou pestiféré. La princesse aînée interrompit sa lecture et le regarda silencieusement avec des yeux effrayés; le plus jeune, sans taupe, prenait exactement la même expression ; la plus petite, avec une taupe, d'un tempérament joyeux et plein d'humour, se pencha vers le métier à broder pour cacher un sourire, causé, probablement, par la scène à venir, dont elle prévoyait l'amusement. Elle a baissé les cheveux et s'est penchée, comme si elle triait les motifs et retenait à peine son rire.
« Bonjour, ma cousine », dit Pierre. - Vous ne m'hesonnaissez pas ? [Bonjour cousin. Vous ne me reconnaissez pas ?]
« Je te connais trop bien, trop bien.
Comment va la santé du Comte ? Puis-je le voir ? demanda Pierre maladroitement, comme toujours, mais pas gêné.
« Le comte souffre à la fois physiquement et moralement, et il semble que vous ayez pris soin de lui infliger davantage de souffrances morales.
Puis-je voir le décompte ? répéta Pierre.
« Hm !.. Si tu veux le tuer, tue-le complètement, tu vois. Olga, va voir si le bouillon est prêt pour l'oncle, le moment sera bientôt venu », a-t-elle ajouté, montrant à Pierre qu'ils sont occupés et occupés à rassurer son père, alors que lui n'est visiblement occupé qu'à contrarier.
Olga est partie. Pierre s'arrêta un moment, regarda les sœurs et, s'inclinant, dit :
- Alors je vais chez moi. Quand vous le pouvez, dites-le moi.
Il sortit, et le rire sonore mais silencieux de la sœur à la taupe se fit entendre derrière lui.
Le lendemain, le prince Vasily arriva et s'installa dans la maison du comte. Il appela Pierre à lui et lui dit :
- Mon cher, si vous vous conduisez ici, comme à Petersbourg, vous finirez très mal ; c « est tout ce que je vous dis. besoin de le voir du tout.
Depuis, Pierre n'a pas été dérangé et il a passé toute la journée seul à l'étage dans sa chambre.
Pendant que Boris venait le voir, Pierre se promenait dans sa chambre, s'arrêtant parfois dans les coins, faisant des gestes menaçants vers le mur, comme s'il transperçait ennemi invisibleépée, et regardant sévèrement par-dessus ses lunettes, puis recommençant sa marche, prononçant des mots obscurs, haussant les épaules et écartant les bras.
- L "Angleterre a vecu, [End of England]", dit-il en fronçant les sourcils et en pointant du doigt quelqu'un. - M. Pitt comme traitre à la nation et au droit des gens est condamiene a ... [Pitt, en tant que traître à la nation et au peuple droit, condamné à ...] - Il n'a pas eu le temps de terminer la phrase de Pitt, s'imaginant à ce moment-là comme Napoléon lui-même et, avec son héros, ayant déjà fait une traversée dangereuse à travers le Pas de Calais et ayant conquis Londres, - voyant entrer en lui un jeune officier svelte et beau, il s'arrêta. Pierre laissa à Boris un garçon de quatorze ans et décidément ne se souvint pas de lui, mais, malgré cela, avec son habituel manière rapide et cordiale, il le prit par la main et sourit aimablement.
- Vous souvenez-vous de moi? dit Boris calmement, avec un sourire agréable. - Je suis venu avec ma mère au comte, mais il semble qu'il ne soit pas complètement en bonne santé.
Oui, ça a l'air malsain. Tout le dérange, - répondit Pierre, essayant de se rappeler qui était ce jeune homme.
Boris sentit que Pierre ne le reconnaissait pas, mais ne jugea pas nécessaire de s'identifier et, sans éprouver la moindre gêne, le regarda dans les yeux.
« Le comte Rostov vous a demandé de venir dîner avec lui aujourd'hui », dit-il après un silence assez long et gêné pour Pierre.
- ET! Comte Rostov ! Pierre parlait joyeusement. « Alors tu es son fils, Ilya. Tu peux t'imaginer, je ne t'ai pas reconnu au début. Rappelez-vous comment nous sommes allés à Sparrow Hills avec m me Jacquot ... [Madame Jaco ...] il y a longtemps.
"Vous vous trompez", dit lentement Boris, avec un sourire audacieux et quelque peu moqueur. - Je suis Boris, le fils de la princesse Anna Mikhailovna Drubetskaya. Le nom du père de Rostov est Ilya et le nom de son fils est Nikolai. Et moi, Jacquot n'en connaissait pas.
Pierre agita les bras et la tête comme si des moustiques ou des abeilles l'avaient attaqué.
- Ah, qu'est-ce que c'est ! J'ai tout confondu. Il y a tellement de parents à Moscou! Vous êtes Boris... oui. Eh bien, nous sommes ici avec vous et d'accord. Alors, que pensez-vous de l'expédition de Boulogne ? Les Anglais auront sûrement du mal si seul Napoléon traverse le canal ? Je pense que l'expédition est très possible. Villeneuve n'aurait pas fait gaffe !
Boris ne sait rien de l'expédition de Boulogne, il ne lit pas les journaux et entend parler de Villeneuve pour la première fois.
"Nous sommes plus occupés ici à Moscou avec des dîners et des commérages qu'avec la politique", a-t-il dit de son ton calme et moqueur. Je n'en sais rien et je ne pense pas. Moscou est le plus occupé par les commérages », a-t-il poursuivi. « Maintenant, ils parlent de vous et du comte.
Pierre sourit de son sourire aimable, comme s'il avait peur pour son interlocuteur, de peur qu'il ne dise quelque chose dont il commencerait à se repentir. Mais Boris parlait distinctement, clairement et sèchement, regardant droit dans les yeux de Pierre.
"Moscou n'a rien d'autre à faire que des commérages", a-t-il poursuivi. "Tout le monde est occupé à qui le comte laissera sa fortune, même s'il nous survivra peut-être tous, ce que je souhaite sincèrement ...
- Oui, c'est très dur, - reprit Pierre, - très dur. - Pierre avait toujours peur que cet officier se lance par inadvertance dans une conversation gênante pour lui-même.
"Et il doit vous sembler," dit Boris en rougissant légèrement, mais sans changer sa voix et sa posture, "il doit vous sembler que tout le monde est seulement occupé à obtenir quelque chose de l'homme riche.
« C'est ainsi », pensa Pierre.
- Et je veux juste te dire, pour éviter les malentendus, que tu te tromperas beaucoup si tu me compte moi et ma mère parmi ces personnes. Nous sommes très pauvres, mais moi, au moins, je parle pour moi : précisément parce que ton père est riche, je ne me considère pas comme son parent, et ni moi ni ma mère ne demanderons jamais rien et n'accepterons rien de lui.
Pierre n'a pas pu comprendre pendant longtemps, mais quand il a compris, il a sauté du canapé, a attrapé Boris par le bras par le bas avec sa vitesse et sa maladresse habituelles, et, rougissant beaucoup plus que Boris, a commencé à parler avec un sentiment mitigé. de honte et d'agacement.
- Cela est étrange! J'ai vraiment... et qui aurait pu penser... je sais très bien...
Mais Boris l'interrompit à nouveau :
- Je suis content d'avoir tout dit. C'est peut-être désagréable pour toi, tu m'excuseras », a-t-il dit en rassurant Pierre, au lieu d'être rassuré par lui, « mais j'espère que je ne t'ai pas offensé. J'ai pour règle de tout dire directement... Comment puis-je le transmettre ? Vous venez dîner chez les Rostov ?
Et Boris, s'étant apparemment débarrassé d'une lourde tâche, sortant lui-même d'une position inconfortable et en mettant une autre dedans, redevint tout à fait agréable.
« Non, écoute », dit Pierre en se calmant. - Vous êtes une personne formidable. Ce que vous venez de dire est très bien, très bien. Bien sûr, vous ne me connaissez pas. Il y a si longtemps qu'on ne s'est pas vus… encore des enfants… Vous pouvez supposer en moi… je vous comprends, je vous comprends très bien. Je ne le ferais pas, je n'aurais pas l'esprit, mais c'est merveilleux. Je suis très heureux d'avoir fait ta connaissance. Étrange, ajouta-t-il après une pause et un sourire, ce que tu supposais en moi ! Il rit. - Et alors ? Nous apprendrons à mieux vous connaître. S'il vous plaît. Il serra la main de Boris. « Vous savez, je n'ai jamais été chez le Comte. Il ne m'a pas appelé... Je suis désolé pour lui en tant que personne... Mais que puis-je faire ?
- Et vous pensez que Napoléon aura le temps de transporter l'armée ? demanda Boris en souriant.
Pierre s'est rendu compte que Boris voulait changer la conversation et, d'accord avec lui, a commencé à exposer les avantages et les inconvénients de l'entreprise de Boulogne.
Le valet de pied vint appeler Boris auprès de la princesse. La princesse partait. Pierre promit de venir dîner afin de se rapprocher de Boris, lui serra fermement la main, le regardant affectueusement dans les yeux à travers ses lunettes... Après son départ, Pierre fit longuement le tour de la salle, ne perçant plus un ennemi invisible avec une épée, mais souriant au souvenir de ce jeune homme doux, intelligent et dur.
Comme il arrive dans la première jeunesse, et surtout dans une situation de solitude, il éprouva une tendresse déraisonnable pour ce jeune homme et se promit de se lier d'amitié avec lui sans faute.
Le prince Vasily a vu la princesse. La princesse tenait un mouchoir sur ses yeux et son visage était en larmes.
- C'est horrible! terrible! dit-elle, « mais quoi qu'il en coûte, je ferai mon devoir. Je viendrai passer la nuit. Tu ne peux pas le laisser comme ça. Chaque minute est précieuse. Je ne comprends pas ce que les princesses tardent. Peut-être que Dieu m'aidera à trouver un moyen de le préparer !… Adieu, mon prince, que le bon Dieu vous soutienne… [Adieu, prince, que Dieu vous soutienne.]
- Adieu, ma bonne, [Adieu, ma chère,] - répondit le prince Vasily en se détournant d'elle.
« Ah ! il est dans une position épouvantable », dit la mère à son fils en remontant dans la voiture. Il reconnaît à peine quelqu'un.
- Je ne comprends pas, maman, quelle est sa relation avec Pierre ? demanda le fils.
« Le testament dira tout, mon ami ; notre destin en dépend...
"Mais pourquoi pensez-vous qu'il nous laisserait quelque chose?"
-Ah mon ami ! Il est si riche et nous sommes si pauvres !
"Eh bien, ce n'est pas une raison suffisante, mère.
- Oh mon Dieu! Oh mon Dieu! Qu'est-ce qu'il est mauvais ! s'exclama la mère.
Quand Anna Mikhailovna est allée avec son fils chez le comte Kirill Vladimirovitch Bezukhy, la comtesse Rostova est restée seule pendant longtemps, mettant un mouchoir sur ses yeux. Enfin, elle a appelé.
"Qu'est-ce que tu es, ma chérie", dit-elle avec colère à la fille, qui se fit attendre plusieurs minutes. Vous ne voulez pas servir, n'est-ce pas ? Je vais donc te trouver une place.
La comtesse était bouleversée par le chagrin et la pauvreté humiliante de son amie et n'était donc pas de bonne humeur, ce qui s'exprimait toujours en elle par le nom de la bonne "chère" et "vous".
"Coupable de", dit la bonne.
« Demandez le Comte pour moi.
Le comte, en se dandinant, s'approcha de sa femme avec un air un peu coupable, comme toujours.
- Eh bien, comtesse ! Quel sera un sauté au madere [saute à Madère] de tétras, ma chère ! J'ai essayé; J'ai donné mille roubles pour Taraska pas pour rien. Frais!
Il s'assit à côté de sa femme, appuyant vaillamment ses mains sur ses genoux et ébouriffant ses cheveux gris.
- Que voulez-vous, comtesse ?
- Voici quoi, mon ami - qu'est-ce que vous avez sale ici? dit-elle en désignant le gilet. "C'est du sauté, c'est ça", a-t-elle ajouté en souriant. - Voilà, comte : j'ai besoin d'argent.
Son visage devint triste.
- Ah, Comtesse !...
Et le comte se mit à s'agiter en sortant son portefeuille.
- J'ai besoin de beaucoup, comptez, j'ai besoin de cinq cents roubles.
Et elle, sortant un mouchoir de batiste, en frotta le gilet de son mari.
- Maintenant. Hé, qui est là ? cria-t-il d'une voix que seuls les gens crient, confiant que ceux qu'ils appellent se précipiteront à leur appel. - Envoyez-moi Mitenka !
Mitenka, ce fils noble, élevé par le comte, qui s'occupait maintenant de toutes ses affaires, entra dans la chambre d'un pas tranquille.
Pour désigner les nombres en latin, les combinaisons des sept caractères suivants sont acceptées : I (1), V (5), X (10), L (50), C (100), D (500), M (1000).
Pour mémoriser les désignations de lettres des nombres dans l'ordre décroissant, une règle mnémotechnique a été inventée :
Nous donnons des citrons juteux, assez pour Vall Ix (respectivement M, D, C, L, X, V, I).
Si le signe indiquant un nombre plus petit est à droite du signe indiquant un nombre plus grand, alors le plus petit nombre doit être ajouté au plus grand, s'il est à gauche, puis soustraire, à savoir :
VI - 6, c'est-à-dire 5+1
IV - 4, c'est-à-dire 5 - 1
XI - 11, c'est-à-dire 10+1
IX - 9, c'est-à-dire 10 - 1
LX - 60, c'est-à-dire 50+10
XL - 40, c'est-à-dire 50 - 10
CX - 110, c'est-à-dire 100+10
XC - 90, c'est-à-dire 100-10
MDCCCXII - 1812, c'est-à-dire 1000 + 500 + 100 + 100 + 100 + 10 + 1 + 1.
Il peut y avoir différentes significations pour un même nombre. Par exemple, le nombre 80 peut être noté LXXX (50 + 10 + 10 + 10) et XXC (100 - 20).
Pour écrire des nombres en chiffres romains, vous devez d'abord écrire le nombre de milliers, puis de centaines, puis de dizaines et enfin d'unités.
Je (1) - unus (unus)
II (2) - duo (duo)
III (3) - tres (tres)
IV (4) - quattuor (quattuor)
V (5) - quinqué (quinqué)
VI (6) - sexe (sexe)
VII (7) - septera (septembre)
VIII (8) - octo (octo)
IX (9) - novème (novème)
X (10) - decern (décem)
XI (11) - indécim (indécim)
XII (12) - duodécim (duodécim)
ХШ (13) - tredécim (trédécim)
XIV (14) - quattuordécim (quattuordécim)
XV (15) - quindécim (quindécim)
XVI (16) - sedecim (sedecim)
XVII (17) - septendecim (septendecim)
XVIII (18) - duodeviginti (duodeviginti)
XIX (19) - undeviginti (undeviginti)
XX (20) - viginti (viginti)
XXI (21) - unus et viginti ou viginti unus
XXII (22) - duo et viginti ou viginti duo, etc.
XXVIII (28) - duodetriginta (duodetriginta)
XXIX (29) - undetriginta (undetriginta)
XXX (30): triginta (triginta)
XL (40) - quadraginta (quadraginta)
L (5O) - quinquaginta (quinquaginta)
LX (60) - sexaginta (sexaginta)
LXX (70) - septuaginta (szltuaginta)
LXXX180) - octoginte (octoginte)
KS (90) - nonaginta (nonaginta)
C (100) centum (centum)
CC (200) - ducenti (ducenti)
CCC (300) - trecenti (trecenti)
CD (400) - quadrigenti (quadrigenti)
D (500) - quingenti (quingenti)
DC (600) - sescenti (sessenti) ou sexonti (sekstsenti)
DCC (700) - septigenti (septigenti)
DCCC (800) - octingenti (octingenti)
CV (DCCC) (900) - nongenti (nongenti)
M (1000) - mille (mille)
MM (2000) - duo milia (duo milia)
V (5000) - quinque milla (quinque milla)
X (10 000) - milia décem (milia décem)
XX (20000) - viginti milia (viginti milia)
C (100000) - centum milia (centum milia)
XI (1000000) - decies centena milia (decies centena milia).
Si tout à coup une personne curieuse demande pourquoi les lettres latines V, L, C, D, M ont été choisies pour désigner les nombres 50, 100, 500 et 1000, alors nous dirons immédiatement que ce ne sont pas du tout des lettres latines, mais complètement différentes personnages.
Le fait est que l'alphabet grec occidental a servi de base à l'alphabet latin. C'est à lui que remontent les trois signes L, C et M. Ils désignaient ici des sons aspirés, qui n'étaient pas dans la langue latine. Lors de la formation de l'alphabet latin, ce sont eux qui se sont avérés superflus. Ils ont été adaptés pour désigner les nombres dans l'écriture latine. Plus tard, leur orthographe a coïncidé avec les lettres latines. Ainsi, le signe C (100) est devenu similaire à la première lettre du mot latin centum (cent) et M (1000) - à la première lettre du mot mille (mille). Quant au signe D (500), c'était la moitié du signe F (1000), puis il est devenu comme une lettre latine. Le signe V (5) n'était que la moitié supérieure du signe X (10).