powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Почему не работает?
26 сообщений из 26, показаны все 2 страниц
Почему не работает?
    #37250695
AlexanraN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1) Составить программу, которая распечатывает заданное количество значений функции sin(x)*e^(-x) и соответствующие значения аргумента. Таблица располагается горизонтально. Значения функции распечатываются с точностью 5 знаков после десятичной точки, значения аргумента - с точностью 2 знака после десятичной точки. Функция табулируется на интервале двух периодов.
Я решала так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
void main()
{
double   x,y;
printf("\n\t y="
"sin(x)*exp(-x)\n\n");
printf ("x \t f(x)\n");
for  (x= 0 . 00 ; x<= 6 . 28 ; x+= 0 . 01 )
{
y=sin(x)*exp(-x);
printf ("\t%5.2f\t%9.5f\n", x,y);
}
}
Выдает ошибки: Undefined symbol FIWRQQ in module и Undefined symbol _sin in module
Что не так? и как расположить таблицу горизонтально, у меня ведь будет вертикальной, да?
...
Рейтинг: 0 / 0
Почему не работает?
    #37250743
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanraN,

В общем программа то работает.

Какая строка компиляции и компилятор?
Ваш компилятор ругается - автоматически не подключает библиотеку математики.

Таблицу - вертикально - печать циклом. Символ "\n" - переход на новую строку
...
Рейтинг: 0 / 0
Почему не работает?
    #37250820
AlexanraN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Простите, Ваш вопрос не поняла. Новичок я в программирование, терминологию плохо знаю.:)
я переписала
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
void main()
{
double   x,y;
printf("вычисление функции: y=");

for  (x=0; x<=6.28; x+=0.01)
{
y=sin(x)*exp(-x);
printf ("\t%9.5f", y);
}
{
printf ("\n");}
{
printf ("\t%5.2f", x);
}
}


Теперь будет печатать таблицу горизонтально?
...
Рейтинг: 0 / 0
Почему не работает?
    #37250842
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanraNПростите, Ваш вопрос не поняла. Новичок я в программирование, терминологию плохо знаю.:)
В какой программе набираете текст своей и как запускаете на выполнение/компиляцию?
...
Рейтинг: 0 / 0
Почему не работает?
    #37250854
AlexanraN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Borland C++ 3.1 for DOS. А запускаю... как обычно: run->run.
...
Рейтинг: 0 / 0
Почему не работает?
    #37250860
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanraN,

В галочках в сеттингс поставить использовать math и можно emulation.

15 лет bc3.1 не видел )
...
Рейтинг: 0 / 0
Почему не работает?
    #37250873
AlexanraN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Siemargl, Спасибо большое! Все заработало:)
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Почему не работает?
    #38703326
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
#include <stdio.h>
/* printing the Fahrenheit and Celsius for fahr = 0, 20, ... 300 */
main()
{
	float fahr, celsius;
	int lower, upper, step;
	
	lower = 0;
	upper = 300;
	step = 20;
	
	fahr = lower;
	while (fahr <= upper) {
		celsius = (5.0/9.0) * (fahr-32.0);
		printf(“%3.0f %6.1f\n”, fahr, celsius);
		fahr = fahr + step;
	}
}


Компилятор выбивает ошибку на этом месте: “%3.0f %6.1f\n”
Что делать?
...
Рейтинг: 0 / 0
Почему не работает?
    #38703331
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВарвейнЧто делать?
Не копипастить безмозгло примеры из текста с издательским оформлением и прочими парными
кавычками.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Почему не работает?
    #38703359
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovНе копипастить безмозгло примеры из текста с издательским оформлением и прочими парными
кавычками.


Ну уж простите, что я такой неуч. В программировании я ноль, и надеялся на указание на ошибку в коде, чтобы учесть ее и не допускать подобного в будущем.
...
Рейтинг: 0 / 0
Почему не работает?
    #38703364
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Упс, нашёл проблему. Я ведь использую DevC++, а книга по языку С. Ех...
...
Рейтинг: 0 / 0
Почему не работает?
    #38703427
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВарвейнУпс, нашёл проблему. Я ведь использую DevC++, а книга по языку С. Ех...

вам же ответили

Dimitry Sibiryakov Не копипастить безмозгло примеры из текста с издательским оформлением и прочими парными
кавычками.

так надо.
Код: plaintext
1.
printf("%3.0f %6.1f\n", fahr, celsius);



С большой долей вероятности DevC++ должен отлично компилировать этот код.
...
Рейтинг: 0 / 0
Почему не работает?
    #38704135
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SashaMercury,

Спасибо, получилось.
Я просто подумал, что должны быть как раз такие кавычки, как в книге (опять же, из-за недостатка знаний в этой области).
...
Рейтинг: 0 / 0
Почему не работает?
    #38735403
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я опять обращаюсь за помощью...
Задание: проверить, находится ли точка с координатами (x, y) внутри кольца с центром в начале координат, внутренним радиусом 2,5 и внешним радиусом 3.
Суть поблемы: дважды спрашивает x.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
#include <stdio.h>
#include <conio.h>
#include <math.h>

main()
{
    float x, y;
    printf("Enter x:\n");
    scanf("%f\n", &x);
    printf("Enter y:\n");
    scanf("%f\n", &y);
    if((pow(x,2)+pow(y,2) >= 6.25) && (pow(x,2)+pow(y,2) <= 9))
    printf("Yes, this point is inside this figure.");
    else printf("No, this point is not inside this figure.");
    getch();
}
...
Рейтинг: 0 / 0
Почему не работает?
    #38735416
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВарвейнСуть поблемы: дважды спрашивает x.Скомпилируй программу еще раз.

И убери \n из шаблона scanf'a. Оно по разному будет работать в разных окружениях.
...
Рейтинг: 0 / 0
Почему не работает?
    #38735434
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
White Owl, спасибо большое.
...
Рейтинг: 0 / 0
Почему не работает?
    #38741074
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задача: напечатать все 3-цифровые натуральные числа, которые равны суме кубов цифр, из которых состоят.
Проблема: выводит длинный столбец из числа 2293456, просто говоря - не работает.
Уже битых два часа сижу, ищу ошибку, но найти не могу, поэтому смиренно прошу о помощи. :'(
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
#include <stdio.h>
#include <conio.h>
#include <math.h>

main()
{
	int x, y, z, p;
	x = 1;
	y = 0;
	z = 0;
	p = 100*x + 10*y + z;
	while (p >= 100 && p < 1000) {
		if (p = pow(x,3) + pow(y,3) + pow(z,3)) printf("%d\n", &p);
		if (z < 9) z = z++;
		else if (z = 9, y <9) y = y++, z = 0;
		else if (z = 9, y = 9, x < 9) x = x++, y = 0, z = 0;
		else if (z = 9, y = 9, x = 9) z = z++;
		p = 100*x + 10*y + z;
	}
	getch();
}
...
Рейтинг: 0 / 0
Почему не работает?
    #38741078
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВарвейнУже битых два часа сижу, ищу ошибку, но найти не могу
Присваивание - один =. Равенство - два ==.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Почему не работает?
    #38741082
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovПрисваивание - один =. Равенство - два ==.


Спасибо, исправил, но программа всё равно не работает. Может быть, ошибка еще и в алгоритме, но я не могу найти ее.
Попробую еще завтра, на свежую голову.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
#include <stdio.h>
#include <conio.h>
#include <math.h>

main()
{
	int x, y, z, p;
	x = 1;
	y = 0;
	z = 0;
	p = 100*x + 10*y + z;
	while (p >= 100 && p < 1000) {
		if (p == pow(x,3) + pow(y,3) + pow(z,3)) printf("%d\n", &p);
		if (z < 9) z = z++;
		else if (z == 9, y < 9) y = y++, z = 0;
		else if (z == 9, y == 9, x < 9) x = x++, y = 0, z = 0;
		else if (z == 9, y == 9, x == 9) z = z++;
		p = 100*x + 10*y + z;
	}
	getch();
}

...
Рейтинг: 0 / 0
Почему не работает?
    #38741087
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Варвейн,

как ты думаешь, как это
Код: plaintext
1.
if (z == 9, y == 9, x == 9)



работает ?

Расскажи нам...
...
Рейтинг: 0 / 0
Почему не работает?
    #38741088
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВарвейнМожет быть, ошибка еще и в алгоритме, но я не могу найти ее.

Запятая не является логическим оператором.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Почему не работает?
    #38741199
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но тут оптимизировать и оптимизировать

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
#include <stdio.h>
#include <stdlib.h>

#define MAX_INDEXES 4+1
#define MAX_VALUE 1000


int sum_cube_ind(int num)
{
	char* s = (char*)malloc(MAX_INDEXES*sizeof(char));
	sprintf(s, "%d", num);

	int res = 0;
	for (int i = 0; *(s + i); ++i)
	{
		int t = *(s + i) - '0';
		res += t*t*t;
	}
	free(s);
	return res;
}


int main(int argc,char** argv)
{
	for (int i = 1; i <= 1000; ++i)
	{
		sum_cube_ind(i) == i ? printf("%i\n", i) : false;
	}
	return 0;
}




Варвейн, а где декомпозиция задачи
...
Рейтинг: 0 / 0
Почему не работает?
    #38741221
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, и тут программа не только для трёхзначных чисел. Как исправить понятно
...
Рейтинг: 0 / 0
Почему не работает?
    #38741934
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу прощения у всех, чье время я украл. Я допустил несколько очень глупых ошибок, что и привело к неправильной работе программы.
Вот в таком виде программа работает исправно.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
#include <stdio.h>
#include <conio.h>
#include <math.h>

main()
{
	int x, y, z, p;
	x = 1;
	y = 0;
	z = 0;
	p = 100*x + 10*y + z;
	while (p >= 100 && p < 1000) {
		/* Часть, которая отвечает за печать значений, удовлетворяющих условие задачи */
		if (p == pow(x,3) + pow(y,3) + pow(z,3)) printf("%d\n", p);
		else printf(" \b");
		
		/* Часть, которая отвечает за прирост самого числа P на 1 каждый цикл */
		if (z < 9) z = z++;
		else if (z == 9 && y < 9) {
		y = y++;
		z = 0;
	}
		else if (z == 9 && y == 9 && x < 9) {
		x = x++;
		y = 0;
		z = 0;
	}
		else z = z++;
		p = 100*x + 10*y + z;
	}
	getch();
}




SashaMercuryНо тут оптимизировать и оптимизировать
Согласен, программа не оптимизирована, но пока это всё, на что я способен.
...
Рейтинг: 0 / 0
Почему не работает?
    #38741944
Варвейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ах да, это лишнее.
Код: plaintext
1.
else printf(" \b");
...
Рейтинг: 0 / 0
Почему не работает?
    #38742334
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Варвейн
SSНо тут оптимизировать и оптимизировать
Согласен, программа не оптимизирована, но пока это всё, на что я способен.

Да я про свой код )

Ваш мне тем более не нравится. Переписывайте нормально. Я же написал

SSВарвейн, а где декомпозиция задачи

x = x++;

1. Что это ?) Как это работает, как вы думаете ?)
2. Что делает функция getch() ? Зачем использовать то, что вы не знаете ? (А если знаете то расскажите)
3. Ваш код абсолютно нечитабелен, и ужасен. Переписывайте программу нормально.
...
Рейтинг: 0 / 0
26 сообщений из 26, показаны все 2 страниц
Форумы / C++ [игнор отключен] [закрыт для гостей] / Почему не работает?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]