#!/usr/local/src/cmd/calc/calc -S # # mersenne - print the value of a mersenne number # # Copyright (C) 1999 Landon Curt Noll # # Calc is open software; you can redistribute it and/or modify it under # the terms of the version 2.1 of the GNU Lesser General Public License # as published by the Free Software Foundation. # # Calc is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General # Public License for more details. # # A copy of version 2.1 of the GNU Lesser General Public License is # distributed with calc under the filename COPYING-LGPL. You should have # received a copy with calc; if not, write to Free Software Foundation, Inc. # 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. # # @(#) $Revision: 29.1 $ # @(#) $Id: mersenne.calc,v 29.1 1999/12/14 09:15:35 chongo Exp $ # @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/mersenne.calc,v $ # # Under source code control: 1999/11/30 00:09:01; # File existed as early as: 1999 # # chongo /\oo/\ http://reality.sgi.com/chongo/ # Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/ # usage: # mersenne exp /* * parse args */ if (argv() != 1) { /* we include the name of this script in the error message */ fprintf(files(2), "usage: %s exp\n", config("program")); abort "wrong number of args"; } /* * print the decimal value of 2^n-1 */ print "2^": argv(0) : "-1 =", 2^eval(argv(0))-1;