Problem mit Array
-
Hi, ich möchte von einen Array z.B. 3 Werte auf 1 setzen. Bisher hab ich das immer so gemacht:
f[0]=1; f[1]=1; f[2]=1;
Gibt es nicht eine Möglichkeit, gleich alle auf 1 zu setzen?(Wichtig, dass Array ist natürlich deutlich größern, zB. 100 Felder und die anderen sollren 0 bleiben!). Bei drei Werten geht das ja noch, was aber bei 10? Gibt es keine Vereinfachung?
-
Es gibt Schleifen.
-
Gibt es keine Vereinfachung?
Schleife? *SCNR*
(...in Verbindung mit den Bit-Operatoren)
MfG
GPC
-
GPC schrieb:
(...in Verbindung mit den Bit-Operatoren)
Hää?
-
/* Copyright (C) 1999 Lucent Technologies */ /* From 'Programming Pearls' by Jon Bentley */ /* bitsort.c -- bitmap sort from Column 1 * Sort distinct integers in the range [0..N-1] */ #include <stdio.h> #define BITSPERWORD 32 #define SHIFT 5 #define MASK 0x1F #define N 10000000 int a[1 + N/BITSPERWORD]; void set(int i) { a[i>>SHIFT] |= (1<<(i & MASK)); } void clr(int i) { a[i>>SHIFT] &= ~(1<<(i & MASK)); } int test(int i){ return a[i>>SHIFT] & (1<<(i & MASK)); } int main() { int i; for (i = 0; i < N; i++) clr(i); /* Replace above 2 lines with below 3 for word-parallel init int top = 1 + N/BITSPERWORD; for (i = 0; i < top; i++) a[i] = 0; */ while (scanf("%d", &i) != EOF) set(i); for (i = 0; i < N; i++) if (test(i)) printf("%d\n", i); return 0; }
MfG
GPC
-
Wtf?
Kann es sein, dass das Problem des OPs zu trivial ist?
-
TactX schrieb:
Wtf?
na wenn schon, denn schon
Kann es sein, dass das Problem des OPs zu trivial ist?
Jetzt bin ich
MfG
GPC
-
GPC schrieb:
Kann es sein, dass das Problem des OPs zu trivial ist?
Jetzt bin ich
Also ich habe den OP so gelesen, dass er einfach ein Array (bzw. Teile davon) initialisieren will. Ich habe keine Ahnung wie du da auf Bitoperationen kommst...
-
TactX schrieb:
GPC schrieb:
Kann es sein, dass das Problem des OPs zu trivial ist?
Jetzt bin ich
Also ich habe den OP so gelesen, dass er einfach ein Array (bzw. Teile davon) initialisieren will. Ich habe keine Ahnung wie du da auf Bitoperationen kommst...
Ja, das sehe ich auch so. Die set-Methode setzt ja auch das i-te Element des Arrays
Aber Schleife sollte schon reichen...MfG
GPC