Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 26.03.2011
Сообщений: 24
1

Вычисления массива (проверить код)

27.03.2011, 23:58. Показов 1892. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Описать алгоритм вычисления массива значений функции
y^i={a*sin(x i-итоe)/sin(x i-итоe)-b (x i-итоe)<2,3
{btg(x i-итоe) 2.3<=(x i-итоe)<=4.3
{sin(ax i-итоe)-корень из (x i-итоe) sin(x i-итоe)>5.3 где i=1,2,3...


C++
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
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <math.h>
const int n=10;
int main()
{
int i;
float x[10];
printf("massiv\n");
for (i=0; i<10; i++)
scanf("%f",&x[i]);
}
int main();
{
    float a,b,x[i],y[i];
 
    printf("Enter a,b,x[i]");
    scanf("%f %f %f", &a, &b, &x[i]);
    if (x<=2.3)
         y = a * sin(x[i])/sin(x[i])-b
    else if (x>=5.3)
    y = sin(a*x[i])-sqrt(x[i]);
    else
        y = b*tg(x[i])
 
    printf("y = %f",y);
}
1>------ Построение начато: проект: Mynameiszhenia1, Конфигурация: Debug Win32 ------
1> Mynameiszhenia1.cpp
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(13): warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> c:\program files\microsoft visual studio 10.0\vc\include\stdio.h(304): см. объявление "scanf"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(16): error C2447: {: отсутствует заголовок функции (возможно, используется формальный список старого типа)

========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

Подскажите, что делать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.03.2011, 23:58
Ответы с готовыми решениями:

Найти нечетные элементы массива. Проверить код
Нужно найти нечетные элементы массива(их количество), которые не лежат на диагоналях. я пришел к...

Найти количество нечетных элементов массива. Проверить код
Здравствуйте нужно найти количество нечетных элементов массива, которые не находятся на...

Двойная сортировка массива. Проверить код
дан массив целых чисел. В нем ищется наибольший элемент и его местоположение. И далее...

Блок-схема к примеру (проверить код, код рабочий)
Даны действительные числа a, b, c. Получить: (формула ниже). Определить функцию нахождения...

15
Заблокирован
28.03.2011, 00:29 2
qheff,
два int main() - это круто. Этого еще никто не делал. Вот компилятор и не оценил.
1
0 / 0 / 1
Регистрация: 26.03.2011
Сообщений: 24
28.03.2011, 00:31  [ТС] 3
Цитата Сообщение от IrineK Посмотреть сообщение
qheff,
два int main() - это круто. Этого еще никто не делал. Вот компилятор и не оценил.
Я уже понял, что в этом ошибка, однако, как правильно сделать? Я убрал int main(), но стало всё намного хуже.
0
20 / 20 / 3
Регистрация: 18.09.2010
Сообщений: 28
28.03.2011, 00:45 4
C++
1
float a,b,x[i],y[i];
нормально обьяви переменые и масивы да и константа для чего тебе если ты её не используешь . И если у тебя int main() то в конце допиши return 0; или вмест int поставь void main()
1
Заблокирован
28.03.2011, 00:46 5
А в чем глубинный философский смысл этого выражения:
y = a * sin(x[i])/sin(x[i])-b

По идее, это просто:
y = a-b
0
0 / 0 / 1
Регистрация: 26.03.2011
Сообщений: 24
28.03.2011, 00:52  [ТС] 6
Вроде всё исправил, просьба проверить и справить (если что)
C++
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
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <math.h>
const int n=10;
int main()
{
int i;
float x[10];
printf("massiv\n");
for (i=0; i<10; i++)
scanf_s("%f", &x[i]);
}
void main() 
{
    float a,b,x;
 
    printf("Enter a,b,x[i]");
    scanf("%f %f %f", &a, &b, &x[i]);
    if (x<=2.3)
         y = a-b
    else if (x>=5.3)
    y = sin(a*x[i])-sqrt(x[i]);
    else
        y = b*tg(x[i])
 
    printf("y = %f",y);
}
1>------ Построение начато: проект: Mynameiszhenia1, Конфигурация: Debug Win32 ------
1> Mynameiszhenia1.cpp
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(16): error C2556: void main(void): перегруженная функция отличается от "int main(void)" только возвращаемым типом
1> c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(7): см. объявление "main"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(16): error C2371: main: переопределение; различные базовые типы
1> c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(7): см. объявление "main"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(20): error C2065: i: необъявленный идентификатор
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(22): error C2065: y: необъявленный идентификатор
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(23): error C2143: синтаксическая ошибка: отсутствие ";" перед "else"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(24): error C2065: y: необъявленный идентификатор
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(24): error C2065: i: необъявленный идентификатор
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(24): error C2065: i: необъявленный идентификатор
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(26): error C2065: y: необъявленный идентификатор
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(26): error C2065: i: необъявленный идентификатор
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(28): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "printf"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(26): error C3861: tg: идентификатор не найден
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(28): error C2065: y: необъявленный идентификатор
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
0
20 / 20 / 3
Регистрация: 18.09.2010
Сообщений: 28
28.03.2011, 00:53 7
опять у тебя 2 main()... что ты там исправил ?
C++
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
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <math.h>
const int n=10;
void main()
{
int i;
float x[n]={0};
float a,b,y;
printf("massiv\n");
for (i=0; i<n; i++)
scanf_s("%f", &x[i]);
 
 
        printf("Enter a,b,x[i]");
        scanf("%f %f %f", &a, &b, &x[i]);
for(i=0;i<n;i++)
{
    if (x[i]<=2.3)
                 y = a-b;
        else if (x[i]>=5.3)
        y = sin(a*x[i])-sqrt(x[i]);
        else
                y = b*tg(x[i]);
 
        printf("y = %f",y);
}
}
вроде должна заработать
1
0 / 0 / 1
Регистрация: 26.03.2011
Сообщений: 24
28.03.2011, 00:57  [ТС] 8
Цитата Сообщение от IrineK Посмотреть сообщение
А в чем глубинный философский смысл этого выражения:
y = a * sin(x[i])/sin(x[i])-b

По идее, это просто:
y = a-b
Это идёт как дробь.
т.е в числителе: a-sin(икс итый)
в знаменателе: sin(икс итый)-b

Добавлено через 2 минуты
Цитата Сообщение от Ариман Посмотреть сообщение
опять у тебя 2 main()... что ты там исправил ?
А можете исправить, как должно быть? Просто я вообще, не знаю С, только изучаю азы, второй день :-)
0
Заблокирован
28.03.2011, 01:00 9
т.е в числителе: a-sin(икс итый)
в знаменателе: sin(икс итый)-b
имеет другую физиономию лица:
y = a * sin(x[i])/(sin(x[i])-b)

Добавлено через 3 минуты
Ариман,
в строке 14 и 18 x[i] запрашивается дважды.
a,b вообще не надо вводить в цикле. Они - общее достояние для всех "итых".
0
0 / 0 / 1
Регистрация: 26.03.2011
Сообщений: 24
28.03.2011, 01:05  [ТС] 10
Итог:
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(18): warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> c:\program files\microsoft visual studio 10.0\vc\include\stdio.h(304): см. объявление "scanf"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(19): error C2446: <=: нет преобразования "double" в "float *"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(19): error C2440: <=: невозможно преобразовать "double" в "float [10]"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(21): error C2446: >=: нет преобразования "double" в "float *"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(21): error C2440: >=: невозможно преобразовать "double" в "float [10]"
1>c:\users\жека\documents\visual studio 2010\projects\mynameiszhenia1\mynameiszhenia1\mynameiszhenia1.cpp(24): error C3861: tg: идентификатор не найден
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
0
Заблокирован
28.03.2011, 01:07 11
qheff,
вам реально нужна помощь или вы так прикалываетесь?
0
0 / 0 / 1
Регистрация: 26.03.2011
Сообщений: 24
28.03.2011, 01:09  [ТС] 12
Цитата Сообщение от IrineK Посмотреть сообщение
qheff,
вам реально нужна помощь или вы так прикалываетесь?
Почему? Нужна, я просто плохо знаю (да что там говорить, ужасно) язык С и две задачи мне надо сдать завтра, очень хотелось бы выучить его, но преподавали отвратительно.
0
20 / 20 / 3
Регистрация: 18.09.2010
Сообщений: 28
28.03.2011, 01:14 13
C++
1
y = b*tan(x[i]);
вот запустилось
C++
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
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
#include <math.h>
const int n=10;
void main()
{
int i;
double x[n]={0};
double a,b,y;
printf("massiv\n");
for (i=0; i<10; i++)
scanf("%f", &x[i]);
 
 
        printf("Enter a,b,x[i]");
        scanf("%f %f %f", &a, &b, &x[i]);
        for(i=0;i<n;i++)
        {
    if (x[i]<=2.3)
                 y = a-b;
        else if (x[i]>=5.3)
        y = sin(a*x[i])-sqrt(x[i]);
        else
                y = b*tan(x[i]);
 
        printf("y = %f",y);
}
}
самое главное работает ) а правильно ли считает это я хз я с математикой недружу
1
Заблокирован
28.03.2011, 01:16 14
Ариман,
родной, а что вы считаете, собственно?
0
20 / 20 / 3
Регистрация: 18.09.2010
Сообщений: 28
28.03.2011, 01:18 15
Цитата Сообщение от IrineK Посмотреть сообщение
Ариман,
родной, а что вы считаете, собственно?
Я не считаю ) это он считает. Вроде попросил исправить ошибки чтоб прога работала. ну вот она запускаетца а дальше пусть ваятель сего творчества разбирается
1
0 / 0 / 1
Регистрация: 26.03.2011
Сообщений: 24
28.03.2011, 01:22  [ТС] 16
Цитата Сообщение от Ариман Посмотреть сообщение
Я не считаю ) это он считает. Вроде попросил исправить ошибки чтоб прога работала. ну вот она запускаетца а дальше пусть ваятель сего творчества разбирается
Запустилось (правда с фаталкой).
Не сочтите за наглось, но можете ещё посмотреть "моё творчество в плане цифр", спасибо :-)
0
28.03.2011, 01:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.03.2011, 01:22
Помогаю со студенческими работами здесь

Получение i-ого элемента массива без вычисления всех элементов (Ленивые вычисления)
Здравствуйте! Необходимо в цикле получать каждый i-й элемнент. Работаю с массивами массивов целых...

Проверить истинность утверждения: Квадрат заданного трехзначного числа равен кубу суммы цифр этого числа (проверить код)
Составить линейную программу, печатающую значение true, если указанное высказывание является...

Сумма элементов массива, у которых сумма индексов, на которых они находятся, - четное число. Проверить код
нужно найти сумму элементов массива, у которых сумма индексов, на которых они находятся, четное...

Заданы два массива. Проверить, что максимальный элемент массива A больше максимального элемента массива B
Заданы два массива: A={a1, a2, a3, a4}, B={b1, b2…..b6}. Переменной S присвоить значение –1, если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru