need help
#1
Опубликовано 26 September 2009 - 16:16
===================================
#include<stdio.h>
main()
{
int i, sum, N;
i = 0;
sum = 0;
printf("Введите число\n");
scanf("%d", & N);
while(i <= N) {
sum = sum + i;
i++;
}
printf("сумма =%d\n", sum);
}
===================================
цикл в цикле с контрольным значением, например, (-1) : чтобы программа заканчивала работу при вводе -1
#2
Опубликовано 26 September 2009 - 16:51
// вставить после scanf if(N == -1) return 0; // или что там программу в шарпе завершает?
#3
Опубликовано 26 September 2009 - 18:47
From: 2:5030/659
http://medved.kicks-ass.net
#4
Опубликовано 26 September 2009 - 21:15
C# = Си шарп = http://ru.wikipedia.org/wiki/C_Sharp.Задание сформулируй нормально. А по тому, что сказано, - пост#2 решает проблему выхода (только при чем там шарп неясно =)))
#6
Опубликовано 26 September 2009 - 22:08
Кстати, да. Это совсем не шарп.при чем здесь шарп?
#7
Опубликовано 27 September 2009 - 16:35
а цикл в цикле надо сделать по заданию
#8
Опубликовано 27 September 2009 - 16:57
после последнего printf -- }
после scanf -- if (N == -1) break;
#9
Опубликовано 27 September 2009 - 18:19
Для сохранения логики программы, перед "}" нужно обнулить "i" и "sum".после последнего printf -- }
Вкратце, как-то так:
int main(int argc, char ** argv) { int i = 0, sum = 0, N; while (printf("Введите число: ") && scanf("%d", &N) && N!=-1) { while(i <= N) sum += i++; printf("Сумма = %d\n", sum); sum = i = 0; } return 0; }
From: 2:5030/659
http://medved.kicks-ass.net
#10
Опубликовано 27 September 2009 - 18:37
int argc, char ** argv - зачем?Для сохранения логики программы, перед "}" нужно обнулить "i" и "sum".
Вкратце, как-то так:int main(int argc, char ** argv) { int i = 0, sum = 0, N; while (printf("Введите число: ") && scanf("%d", &N) && N!=-1) { while(i <= N) sum += i++; printf("Сумма = %d\n", sum); sum = i = 0; } return 0; }
printf("Введите число: ") в while не нужен.
#11
Опубликовано 27 September 2009 - 18:46
int argc, char ** argv - зачем?
printf("Введите число: ") в while не нужен.
1. Можно и просто int main() оставить. А вообще они - для доступа к параметрам, с которыми запускается программа.
2. printf нужен. Откуда еще пользователь узнает, что ему надо именно число ввести (или вообще, что-то ввести).
From: 2:5030/659
http://medved.kicks-ass.net
#12
Опубликовано 27 September 2009 - 21:18
1. Нужно. Которые в этой программе вообще не используются.1. Можно и просто int main() оставить. А вообще они - для доступа к параметрам, с которыми запускается программа.
2. printf нужен. Откуда еще пользователь узнает, что ему надо именно число ввести (или вообще, что-то ввести).
2. В while не нужен, т.к. усложняет конструкцию. После while.
#13
Опубликовано 27 September 2009 - 22:14
1. Нужно. Которые в этой программе вообще не используются.
2. В while не нужен, т.к. усложняет конструкцию. После while.
1. Нет, не нужно. При компиляции они будут исключены и память под них (8 байт) выделяться не будет.
2. См. код.
#14
Опубликовано 28 September 2009 - 00:31
Я определился в 6-м посте. И я ничего не писал про Си, покажи мне то предложение, где это написано с моего акканута.лайт, ты уже определился на чем пишем-то? на Си или Си шарпе?
1. Нет, не нужно. При компиляции они будут исключены и память под них (8 байт) выделяться не будет.
2. См. код.
1. Что не нужно? Ты внимательно прочитал пост? С цитатой? Нет, прочти ещё раз.
2. И что я там увижу? while (printf("Введите число: ") && scanf("%d", &N) && N!=-1)?
То же самое даст while (scanf("%d", &N) && N!=-1) {
printf("Введите число: ");
} и будет более читабельно.
#15
Опубликовано 28 September 2009 - 00:42
Я определился в 6-м посте. И я ничего не писал про Си, покажи мне то предложение, где это написано с моего акканута.
1. Что не нужно? Ты внимательно прочитал пост? С цитатой? Нет, прочти ещё раз.
2. И что я там увижу? while (printf("Введите число: ") && scanf("%d", &N) && N!=-1)?
То же самое даст while (scanf("%d", &N) && N!=-1) {
printf("Введите число: ");
} и будет более читабельно.
вот внимательно и прочитай всё с цитатами, а потом прочитай как работает scanf и не забудь завтра сходить в школу
#16
Опубликовано 28 September 2009 - 00:48
При чем здесь scanf? Я писал про printf, а если ты про второй пост, то нажми F5 и прочти его ещё раз.вот внимательно и прочитай всё с цитатами, а потом прочитай как работает scanf и не забудь завтра сходить в школу
#17
Опубликовано 28 September 2009 - 01:09
При чем здесь scanf? Я писал про printf, а если ты про второй пост, то нажми F5 и прочти его ещё раз.
при том, что scanf блокирующий и твой printf здесь
while (scanf("%d", &N) && N!=-1) { printf("Введите число: "); }будет выведен после того, как будет что-то введено с клавы.
#18
Опубликовано 28 September 2009 - 01:28
Ну это да, косяк. Но ты не сразу о нем написал.при том, что scanf блокирующий и твой printf здесь
while (scanf("%d", &N) && N!=-1) { printf("Введите число: "); }будет выведен после того, как будет что-то введено с клавы.
Посетителей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных пользователей