2016-06-04 3 views
-3

Мне было предложено выполнить программный сегмент по этим вопросам.Проблемы с моим кодом относительно цикла и массивов

  1. Это отображает последний элемент каждой строки, содержащийся в Int A [20] [50], Use While loop.
  2. Это выделяет массив D, сохраняющий квадрат целых чисел от 1 до N.
  3. Цикл while, который определяет произведение всех нечетных целых чисел от A до B исключительно.
While(a<20){ 
a++ 
cout<< A[a][50]<<"\n"; 
} 

редактировать 1:

#include <iostream> 
#include <string> 
using namespace std; 
int main() 
{ 
int a,n,m; 
int A [20][50]={}; 
a=1; 
cout<<"enter your number:"<<endl; 
cin>>n; 
cin>>m; 
cout <<A [n][m] <<"\n"; 
    while (a> 20){ 
     cout << A [a][49]<<"\n"; 
} 
    system ("pause"); 
    return 0; 

редактировать 2:

#include <iostream> 
    #include <string> 
    using namespace std; 
    int main() 
    { 
    int a,n,m; 
    int A [20][50]={}; 
    a=1; 
    cout<<"enter your number:"<<endl; 
    cin>>n; 
    cin>>m; 
    cout <<A [n][m] <<"\n"; 
     while (a < 20){ 

      cout << A [a][49]<<"\n"; 
      } 
      a++; 
     } 
     system ("pause"); 
     return 0; 
     } 
float num; float d[num]; 
cout<<"How many number do you want to enter to find there squure?"<<endl; 
cin>>num; 
for(int i; i<num; i++){ 
cin>>d[i];} 
for(int i; i<num; i++) { 
result[i]=d[i]*d[i];} 
for(int i=0; i<num i++){ 
cout<<result[i]; 

редактировать 1

#include <iostream> 
#include <string> 
#include<iomanip> 
using namespace std; 
int main() 
{ 
int b; 
int x; 
int A[]={}; 
int N; 
int n; 
    cout <<"enter value for N:"<<endl; 
    cin>>N; 
x=1; 
n=N; 
while (x<=N){ 
    b =x*x; 
A[n]=b; 
    x++ ; 
} 
cout <<A[n]<<"\t"; 
    system ("pause"); 
    return 0; 
} 

редактировать 2

#include <iostream> 
#include <string> 
using namespace std; 
int main() 
{ 
    int x=1,b; 
    int N=5; 
    while (x<=N){ 
    b=x*x; 
cout<<b<<"\n"; 
x++; 
} 
system("pause"); 
return 0; 
} 

Я не имею ни малейшего представления о том, как я могу это сделать :(

эти коды правильно? кроме номера 3, потому что я действительно не знаю, как это сделать. Может ли кто-нибудь исправить это? Большое спасибо :)

Редактировать: Я сделал новый ответ на номер 1 и сделал компилируемым :) Редактировать: Я редактировал свой номер 2 сейчас. Но, похоже, он не может быть напечатан в массиве. Редактировать: Мог сделать # 2 работу, но я уверен, что если это вопрос, который задают: s

+1

Отсортируйте ваш код и ваш вопрос. Сделайте код ** компилируемым **. – Downvoter

+1

Код 1 неверен, потому что 'A [a] [50]' разыскивается вне диапазона для 'Int A [20] [50]'. ('Int' является определяемым пользователем типом?) – MikeCAT

+0

Пожалуйста, напишите [Минимальный, ** Полный ** и Подтверждаемый пример] (http://stackoverflow.com/help/mcve). – MikeCAT

ответ

0

И вот что я получил для первого вопроса.

#include <iostream> 

using namespace std; 

int main(void) { 
    // Decalare an array of 20 rows, 
    // each containing an array of 50 integers. 
    int A[20][50]; 

    // Initialize all the elements of the array to 0. 
    // Invariant: we have initialized `row` rows. 
    for (int row = 0; row != 20; ++row) { 

     // Invariant: we have initialized `col` columns. 
     for (int col = 0; col != 50; ++col) 
      A[row][col] = 0; 
    } 

    // We can now fill in the values we want into the array. 
    // For this example, we are filling the 1st row with 0, 
    // 2nd row with 1, 3rd row with 2 and so on. 
    // You can fill it with any values you like. 
    for (int row = 0; row != 20; ++row) { 
     for (int col = 0; col != 50; ++col) 
      A[row][col] = row+1; 
    } 

    // Display the last element of each row. 
    // Invariant: we have printed `row` rows. 
    for (int row = 0; row != 20; ++row) { 

     // The index -1 gives us the last element in an array. 
     cout << "A[" << row << "][50]: " << A[row][-1] << endl; 
    } 

    return 0; 
} 
0

Я пробовал 3-й номер, и я получил это.

#include <iostream> 

using namespace std; 

int main(void) { 
    cout << "Enter the starting value: "; 
    int a; 
    cin >> a; 

    cout << "Enter the number you wish to stop at: "; 
    int b; 
    cin >> b; 

    // Check if b is less than a. 
    if (b < a) { 
     cerr << "The stopping value must be greater than the starting value" 
      << endl; 

     // No need to continue. 
     return 1; 
    } 

    int c = a; // we start at a. 
       // I didn't use a directly because 
       // I want to use it to display the result. 
    int result; 
    while (c <= b) { 
     // Check if c is odd. 
     if (c%2 == 1) 
      result *= c; 

     ++c; 
    } 

    // Display the result. 
    cout << "The product of all odd integers from " 
     << a 
     << " to " 
     << b 
     << " is " 
     << result 
     << endl; 

    // Keep window open. 
    cin.get(); 
} 
+0

заданий запрашивает «произведение всех нечетных целых чисел от A до B ** исключительно **», но вы включаете A и B – user463035818

+0

Пожалуйста, обратите внимание, что условие 'c% 2 == 1' может быть проверено только [положительные нечетные числа] (https://ideone.com/qNItpg), вы должны правильно инициализировать «результат» и что вам действительно не нужно проверять каждое число (но вы должны изменить крайности как для назначения): ' int result = 1; c + = c & 1? 2: 1; while (c

+0

@Bob__ Bro может где разместить этот код? какие части я должен заменить? Извините за поздний ответ. Спасибо :) –

0

Вот моя попытка на номер 2.
P.S. Вы можете сделать этот код еще более изящным, абстрагируя некоторые части в функции.

#include <iostream> 

using namespace std; 

int main(void) { 
    cout << "Please enter the number of integers whose squares you wish to " 
     << "compute: "; 

    // Read the number of integers. 
    int n; 
    cin >> n; 

    // Declare an array to hold the squares. 
    // You can call it a variable length array if you want. 
    int squares[n]; 

    // Invariant: we have squared n integers. 
    for (int i = 0; i != n; ++i) { 

     // square (i+1) and add it to the array. 
     squares[i] = (i+1)*(i+1); 
    } 

    // Display the result. 
    cout << "Here are the squares of integers from " 
     << 1 << " to " << n << endl; 

    // Invariant: we have printed n squares to std::cout. 
    for (int i = 0; i != n; ++i) 
     cout << i+1 << ": " << squares[i] << endl; 

    return 0; 
} 
+0

Спасибо за вашу доброту брата! :) Вы ответили на все мои вопросы! Чем вы для вашего времени и усилий. Да благословит вас Бог. –

+0

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

Смежные вопросы