C# :: Aufgabe #264
5 Lösungen
Summe alle Teiler einer positven Ganzzahl
Anfänger - C#
von hollst
- 18.06.2019 um 20:49 Uhr
Man schreibe eine Funktion SIGMA(n) mit n > 0 und ganzzahlig, wobei der Funktionswert sich
aus der Summe aller ganzzahligen, positven Teiler von n ergibt.
Beispiele (Zahl; Teiler; Funktionswert);
1; 1; 1
2; 1, 2; 3
4; 1, 2, 4; 7
5; 1, 5; 6
...
12; 1, 2, 3, 4, 6, 12; 28
...
100; 1, 2, 4, 5, 10, 20, 25, 50, 100; 217
Für 0 < n <= 200 sollte sich der beigefügte Pinplot ergeben.
Viel Spaß!
aus der Summe aller ganzzahligen, positven Teiler von n ergibt.
Beispiele (Zahl; Teiler; Funktionswert);
1; 1; 1
2; 1, 2; 3
4; 1, 2, 4; 7
5; 1, 5; 6
...
12; 1, 2, 3, 4, 6, 12; 28
...
100; 1, 2, 4, 5, 10, 20, 25, 50, 100; 217
Für 0 < n <= 200 sollte sich der beigefügte Pinplot ergeben.
Viel Spaß!
Lösungen:
C#-Code
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Trainc { class Program { public static int Sigma(int n) { int summe = 0; for (int i = 1; i <= n; i++) { if((n % i) == 0) { summe += i; } } return summe; } static void Main(string[] args) { Console.WriteLine("Geben sie eine Zahl ein"); int zahl = int.Parse(Console.ReadLine()); Console.WriteLine(Sigma(zahl)); Console.ReadLine(); } } }
C#-Code
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace teilersumme { class Program { static void Main(string[] args) { List<int> sumList = new List<int>(); for(int n= 1; n <=200;n++) { int sum = 0; for(int t = 1;t <=n;t++) { if(n % t==0) { sum += t; } } sumList.Add(sum); } int i = 0; while(i != 200) { Console.WriteLine(sumList[i]); i++; } Console.ReadKey(); } } }
C#-Code
using static System.Console; using System.Collections.Generic; namespace Aufgabe_264 { /* Man schreibe eine Funktion SIGMA(n) mit n > 0 und ganzzahlig, wobei der Funktionswert sich aus der Summe aller ganzzahligen, positven Teiler von n ergibt. Beispiele (Zahl; Teiler; Funktionswert); 1; 1; 1 2; 1, 2; 3 4; 1, 2, 4; 7 5; 1, 5; 6 ... 12; 1, 2, 3, 4, 6, 12; 28 ... 100; 1, 2, 4, 5, 10, 20, 25, 50, 100; 217 */ static class Program { static void Main() { int nmax = 100; for (var i = 1; i <= nmax; i++) { int sum; int[] temp = i.result(out sum); Write($"anzahl teiler: {temp.Length, 3} i: {i,3} {sum,4} ["); for (var j = 0; j < temp.Length; j++) Write($"{temp[j],4}"); WriteLine("]"); } ReadKey(); } static int[] result(this int n, out int sum) { List<int> erg = new List<int>(); erg.Add(1); sum = 1; for (var i = 2; i <= n / 2; i++) if (n % i == 0) { sum += i; erg.Add(i); } if (n > 1) { erg.Add(n); sum += n; } return erg.ToArray(); } } }
C#-Code
using System; using System.Collections.Generic; class MainClass { public static List<int> sigma(int n) { if(n < 1) { throw new Exception("n is less then 1."); } List<int> values = new List<int>(); for(int i = 1; i <= n; i++) { if(n % i == 0) { values.Add(i); } } return values; } public static void Main (string[] args) { try { for(int i = 1; i <= 200; i++) { List<int> values = MainClass.sigma(i); string result = string.Join(",", values.ToArray()); Console.WriteLine("{0:000}: {1}", i, result); } } catch(Exception ex) { Console.WriteLine(ex.Message); } } }
Konsolenausgabe:
001: 1
002: 1,2
003: 1,3
004: 1,2,4
005: 1,5
006: 1,2,3,6
007: 1,7
008: 1,2,4,8
009: 1,3,9
010: 1,2,5,10
011: 1,11
012: 1,2,3,4,6,12
013: 1,13
014: 1,2,7,14
015: 1,3,5,15
016: 1,2,4,8,16
017: 1,17
018: 1,2,3,6,9,18
019: 1,19
020: 1,2,4,5,10,20
021: 1,3,7,21
022: 1,2,11,22
023: 1,23
024: 1,2,3,4,6,8,12,24
025: 1,5,25
026: 1,2,13,26
027: 1,3,9,27
028: 1,2,4,7,14,28
029: 1,29
030: 1,2,3,5,6,10,15,30
031: 1,31
032: 1,2,4,8,16,32
033: 1,3,11,33
034: 1,2,17,34
035: 1,5,7,35
036: 1,2,3,4,6,9,12,18,36
037: 1,37
038: 1,2,19,38
039: 1,3,13,39
040: 1,2,4,5,8,10,20,40
041: 1,41
042: 1,2,3,6,7,14,21,42
043: 1,43
044: 1,2,4,11,22,44
045: 1,3,5,9,15,45
046: 1,2,23,46
047: 1,47
048: 1,2,3,4,6,8,12,16,24,48
049: 1,7,49
050: 1,2,5,10,25,50
051: 1,3,17,51
052: 1,2,4,13,26,52
053: 1,53
054: 1,2,3,6,9,18,27,54
055: 1,5,11,55
056: 1,2,4,7,8,14,28,56
057: 1,3,19,57
058: 1,2,29,58
059: 1,59
060: 1,2,3,4,5,6,10,12,15,20,30,60
061: 1,61
062: 1,2,31,62
063: 1,3,7,9,21,63
064: 1,2,4,8,16,32,64
065: 1,5,13,65
066: 1,2,3,6,11,22,33,66
067: 1,67
068: 1,2,4,17,34,68
069: 1,3,23,69
070: 1,2,5,7,10,14,35,70
071: 1,71
072: 1,2,3,4,6,8,9,12,18,24,36,72
073: 1,73
074: 1,2,37,74
075: 1,3,5,15,25,75
076: 1,2,4,19,38,76
077: 1,7,11,77
078: 1,2,3,6,13,26,39,78
079: 1,79
080: 1,2,4,5,8,10,16,20,40,80
081: 1,3,9,27,81
082: 1,2,41,82
083: 1,83
084: 1,2,3,4,6,7,12,14,21,28,42,84
085: 1,5,17,85
086: 1,2,43,86
087: 1,3,29,87
088: 1,2,4,8,11,22,44,88
089: 1,89
090: 1,2,3,5,6,9,10,15,18,30,45,90
091: 1,7,13,91
092: 1,2,4,23,46,92
093: 1,3,31,93
094: 1,2,47,94
095: 1,5,19,95
096: 1,2,3,4,6,8,12,16,24,32,48,96
097: 1,97
098: 1,2,7,14,49,98
099: 1,3,9,11,33,99
100: 1,2,4,5,10,20,25,50,100
101: 1,101
102: 1,2,3,6,17,34,51,102
103: 1,103
104: 1,2,4,8,13,26,52,104
105: 1,3,5,7,15,21,35,105
106: 1,2,53,106
107: 1,107
108: 1,2,3,4,6,9,12,18,27,36,54,108
109: 1,109
110: 1,2,5,10,11,22,55,110
111: 1,3,37,111
112: 1,2,4,7,8,14,16,28,56,112
113: 1,113
114: 1,2,3,6,19,38,57,114
115: 1,5,23,115
116: 1,2,4,29,58,116
117: 1,3,9,13,39,117
118: 1,2,59,118
119: 1,7,17,119
120: 1,2,3,4,5,6,8,10,12,15,20,24,30,40,60,120
121: 1,11,121
122: 1,2,61,122
123: 1,3,41,123
124: 1,2,4,31,62,124
125: 1,5,25,125
126: 1,2,3,6,7,9,14,18,21,42,63,126
127: 1,127
128: 1,2,4,8,16,32,64,128
129: 1,3,43,129
130: 1,2,5,10,13,26,65,130
131: 1,131
132: 1,2,3,4,6,11,12,22,33,44,66,132
133: 1,7,19,133
134: 1,2,67,134
135: 1,3,5,9,15,27,45,135
136: 1,2,4,8,17,34,68,136
137: 1,137
138: 1,2,3,6,23,46,69,138
139: 1,139
140: 1,2,4,5,7,10,14,20,28,35,70,140
141: 1,3,47,141
142: 1,2,71,142
143: 1,11,13,143
144: 1,2,3,4,6,8,9,12,16,18,24,36,48,72,144
145: 1,5,29,145
146: 1,2,73,146
147: 1,3,7,21,49,147
148: 1,2,4,37,74,148
149: 1,149
150: 1,2,3,5,6,10,15,25,30,50,75,150
151: 1,151
152: 1,2,4,8,19,38,76,152
153: 1,3,9,17,51,153
154: 1,2,7,11,14,22,77,154
155: 1,5,31,155
156: 1,2,3,4,6,12,13,26,39,52,78,156
157: 1,157
158: 1,2,79,158
159: 1,3,53,159
160: 1,2,4,5,8,10,16,20,32,40,80,160
161: 1,7,23,161
162: 1,2,3,6,9,18,27,54,81,162
163: 1,163
164: 1,2,4,41,82,164
165: 1,3,5,11,15,33,55,165
166: 1,2,83,166
167: 1,167
168: 1,2,3,4,6,7,8,12,14,21,24,28,42,56,84,168
169: 1,13,169
170: 1,2,5,10,17,34,85,170
171: 1,3,9,19,57,171
172: 1,2,4,43,86,172
173: 1,173
174: 1,2,3,6,29,58,87,174
175: 1,5,7,25,35,175
176: 1,2,4,8,11,16,22,44,88,176
177: 1,3,59,177
178: 1,2,89,178
179: 1,179
180: 1,2,3,4,5,6,9,10,12,15,18,20,30,36,45,60,90,180
181: 1,181
182: 1,2,7,13,14,26,91,182
183: 1,3,61,183
184: 1,2,4,8,23,46,92,184
185: 1,5,37,185
186: 1,2,3,6,31,62,93,186
187: 1,11,17,187
188: 1,2,4,47,94,188
189: 1,3,7,9,21,27,63,189
190: 1,2,5,10,19,38,95,190
191: 1,191
192: 1,2,3,4,6,8,12,16,24,32,48,64,96,192
193: 1,193
194: 1,2,97,194
195: 1,3,5,13,15,39,65,195
196: 1,2,4,7,14,28,49,98,196
197: 1,197
198: 1,2,3,6,9,11,18,22,33,66,99,198
199: 1,199
200: 1,2,4,5,8,10,20,25,40,50,100,200
C#-Code
using System; /* Man schreibe eine Funktion SIGMA(n) mit n > 0 und ganzzahlig, wobei der Funktionswert sich aus der Summe aller ganzzahligen, positven Teiler von n ergibt. Beispiele (Zahl; Teiler; Funktionswert); 1; 1; 1 2; 1, 2; 3 4; 1, 2, 4; 7 5; 1, 5; 6 */ namespace Aufgabe_264 { class Program { public static void Berechnung(int Zahl) { int n = 1; do { Console.Write(" {0} ", n); int Summe = 0; for (int i = 1; i <= n; i++) { if ((n % i) == 0) { int Teiler = i; Console.Write(" {0} ", Teiler); Summe = Summe + i; } } Console.WriteLine(" {0} ", Summe); n++; } while (n <= Zahl); } static void Main(string[] args) { Console.Write("Bitte geben Sie eie Zahl ein: "); int eingabe = int.Parse(Console.ReadLine()); Berechnung(eingabe); Console.ReadKey(); } } }