Форум программистов, компьютерный форум, киберфорум
Наши страницы

Вывод в консоль чисел от 1 до 1000 не используя циклов и условных операторов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Двумерный массив покажите как составить только с такими операторами http://www.cyberforum.ru/cpp-beginners/thread1064595.html
Дан двумерный массив а(5,3) Составить программу используя только операторы:for,while,if. Посчитать и вывести на экран Si для элементов каждой строки по формуле: где i-номер строки,j-номер столбца....
C++ Вычислите след матрицы Дана квадратная матрица размером MхM. Вычислите след матрицы (т. е. сумму диагональных элементов). Найдите наименьший и наибольший элементы и подсчитайте их полусумму. Из элементов побочной диагонали... http://www.cyberforum.ru/cpp-beginners/thread1064593.html
Отличия debug x32 от x64 C++
Помогите, не понимаю, в чем разница! Огромное спасибо! С Рождеством!!!1:thank_you:
C++ Составьте программу, которая подсчитывает и выводит значение t1 и t2
Составьте программу, которая подсчитывает и выводит значение t1 и t2 по формулам(на фотографии). Определите области допустимых значений параметров формул и задайте произвольные значения из этих...
C++ Разработать программу, которая выводит на экран таблицу http://www.cyberforum.ru/cpp-beginners/thread1064566.html
Разработать программу, которая вводит фактические данные из таблицы, представленной в данной таблице(таблица на фотографии) и выводит на экран таблицу, подобную той, которая находится в этой таблице...
C++ Описать функции ввода с клавы элементов одномерного массива и определения количества 0 в этом массиве Нужно описать функции ввода с клавы элементов одномерного массива и определения количества 0 в этом массиве. #include <iostream> #include <stdlib.h> #include <time.h> using namespace std; void... подробнее

Показать сообщение отдельно
lemegeton
2925 / 1354 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
07.01.2014, 00:54
В вашем примере две беды: адресная арифметика с указателями на функцию и разные сигнатуры функций main и exit.

Вот, в принципе, суть та же, но длиннее и более-менее по-стандарту:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <cstdlib>
#include <iostream>
 
void (*functions[2])(int);
 
void quit(int) {
  exit(0);
}
 
void print(int n) {
  std::cout << n << std::endl;
  functions[n / 1000](n + 1);
}
 
int main(int, char**) {
  functions[0] = print;
  functions[1] = quit;
  print(0);
}
Добавлено через 9 минут
По-короче:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <cstdlib>
#include <iostream>
 
void print(int n) {
  static void (*functions[])(int) = {print, exit};
  std::cout << n << std::endl;
  functions[n / 1000](n + 1);
}
 
int main(int, char**) {
  print(0);
}
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.